Ian Hefflefinger

Salt Lake City, UT · ianrhefflefinger@gmail.com

Hello! I am full-stack software engineer with a focus in backend business logic and data processing. I have worked in IT for nearly a decade from tech support to systems administration to software development. I strive to create solutions that are practical, testable, and beautiful.


Experience

Software Engineer

Overseas Military Sales Corporation

At OMSC, I primarily work on backend business logic and data processing. I write code to: integrate with third-party API’s for sending surveys, emails, and alerts; parse vendor data from various sources (csv, JSON, text, etc.) into our system; automate data aggregation based on cron or business events; display real-time data on our websites; fix bugs/enhance existing implementations; and solve problems that are typically outside the normal flow of development.

October 2022 - Current

Software Engineer Intern

Stride Inc.

Researched, designed, developed, and tested a data-reconciliation module in a platform re-design using Java, Postgres, the Serverless Framework, and AWS. Participated in daily standups, retros, and grooming/planning meetings. Worked with other developers, QA, and stakeholders to ensure a quality and sound product was produced.

June 2021 - August 2022

Software Developer Intern

Manic Kat Records

Modified UI/UX, corrected bugs, implemented new features, and established a better SDLC for a cross-platform mobile application developed by previous interns. Helped design, develop, and test a web-based admin site for the mobile app.

May 2021 - January 2022

Support Engineer (Systems Admin)

Goldman Sachs

General Windows and Unix (RHEL) systems administration - managed users and computers. Automated tasks, when necessary, using various shell-scripting languages. Maintained knowledge-base by correcting or implementing new processes.

September 2018 - February 2020

Technical Support Specialist

CSS Corp

Helped non-technical users with a wide array of computer and network related tasks. Mostly: removed malware, created data backups, configured networks, and configured email clients.

June 2018 - September 2018

Technical Support Specialist

Vantiv Integrated Payments

Hardware, software, and network troubleshooting for card-payment solutions. Role also invloved fairly in-depth financial reconciliation to rule-out technical errors.

March 2016 - November 2017

Education

Southern New Hampshire University

Bachelor of Science
Computer Science - concentration in Software Engineering

GPA: 3.82

January 2017 - May 2022

Skills

Programming Languages & Tools
Ancillary
  • Mobile-First, Responsive Design
  • QA & Unit Testing
  • Atlassian tools (JIRA, Confluence, Bitbucket)
  • SDLC process
  • General DevOps

Portfolio

MongoDB Todo List

node.js/express.js, html, css, JQuery AJAX, & MongoDB

MongoDB Todo List is a Node.js/Express.js application with a MongoDB database. This is a single page application that lets the user add, view, update (cross out), and delete tasks that are stored in MongoDB. The functionality is similar to the SQL version listed below, but uses JQuery and MongoDB to simplify the setup/API calls and the update functionality is a little different. Unlike the previous version, this application is more aesthetically pleasing on the front-end (which is served by Express) and completes CRUD operations using fewer lines of code both on the front-end and back-end.

SQL Todo List

node.js/express.js, html, css, JavaScript, AJAX, & MySQL

SQL Todo List is a Node.js/Express.js application with a MySQL database that interfaces with a vanilla HTML, CSS, and JavaScript front-end. It is a simple todo-list with full CRUD functionality. The application uses tables in HTML to reflect the table-based architecture of the database. This application does not serve the front-end, so it must be opened in the filesystem. You will also need to run the stored procedure (in the server folder) to setup the MySQL database and table. This application uses AJAX and async functions to complete requests.

Weather App

node.js/express.js, hbs, html, css, Bootstrap, & openweathermap API

weatherApp is a Node.js/Express.js application that renders weather data to a vanilla js and Bootstrap webpage. The user can enter a search query (the name of a city) into a form and an API on the backend makes a call to a third-part API (https://api.openweathermap.org/) to retrieve the data. The data is then parsed for individual data relevant to the application and returned to the front-end where it is untimately rendered for the user to see.

This Website!

node.js/express.js, ejs, html, css, & AWS

This website is my professional portfolio. It is built using Node and Express.js on the backend with ejs for templating. The front portion of the site is built using simple HTML, CSS, and some Bootstrap. This website sits on top of Amazon Lightsail, due to it's low traffic and for the challenge of deploying the site to a different type of hosting service.

3D Scene With Texture and Controls

c++ & OpenGL

This 3-dimensional scene is a project I created in my computer graphics and visualization course using OpenGL and C++. The scene consists of several objects on a plane and allows full lighting, shading, and control over the "camera", so the user can move around the scene as an entity, similar to a player in a videogame.

Inventory Management System

java, mysql, & jdbc

Inventory Management System is a total overhaul of a really simple application that I initialy created in my first week of my first CS course. The re-designed application is written in Java 8 and utilizes JDBC to interface with a MySQL database. The modified app uses data validation to ensure data integrity and contains full CRUD functionality. The new app is terminal-based, but displays content in an easy to read format.

Steve's Mower Repair Services

node.js/express.js, ejs, express-validator, bootstrap, html, css, & javascript

Steve's Mower Repair Services is a full-stack (less a database) re-creation of a project I initially submitted in my web desgin course, early in my computer science program. The original application was written in HTML, CSS, and JavaScript. The modified version of the site (re-designed for a later course in my program) serves dynamic webpages from an Express.js app using ejs for templating and Bootstrap for formatting (and mobile responsiveness). The re-designed version of the app has a form with front and back-end data validation and proper routing/rendering to display success or error on the same page. The content was kept the same so the updated version of the site can be easily compared to the original version.

Technical Documentation Page

html, css, javascript, & bootstrap

Technical Documentation Page was a responsive web design project that I created for FreeCodeCamp. It is strictly front-end and comprised of HTML, CSS, and JavaScript (including Bootstrap). The page contains technical information about JavaScript and a responsive navigation panel. The content for this project was pre-existing and the project itself serves as an example of my CSS and HTML skills.

see it live


Interests

When I'm not studying Computer Science and learning more about software development, you can find me outside in the mountains or the desert. I am an avid mountain biker, skier, and climber and aim to see the world from new perspectives.

Down here in the valley, you can also find me playing ultimate frisbee in beautiful Sugerhouse Park on Wednesdays or struggling to learn the guitar when I find a little free time.