Evan Gray

Objective

As a Software Engineer with a passion for Ruby, I focus on creating elegant, effective solutions that prioritize product needs. With a commitment to clean, well-architected code and process improvement, I am ready to help drive success for organizations building innovative products and streamlining development processes.

For more information, including my entire work history, please see my LinkedIn profile, or view my Github page to see some of my personal projects.

Experience

Mortgage Connect Risk Solutions (formerly ADFITECH) | Edmond, OK

Product Software Engineer [Remote]

Apr. 2024 — Present

  • I serve as Engineer, Product Owner, and Scrum Master for a team developing and maintaining a client-facing Ruby on Rails portal, managing user stories, backlog prioritization, and code quality. I collaborate with cross-functional teams to plan the deprecation of 10+ legacy systems written in C, C++, PHP, and others, consolidating codebases and streamlining workflows. I lead Scrum ceremonies to drive iterative progress, organize weekly sessions on coding best practices, and work with executives to align the product roadmap with business needs.
  • As the Product Engineer for an offshore contractor team, I led the development of a web-based pysical-file check-in system, integrating Python, Django, and NuxtJS with revenue-critical legacy systems. I architected user-centric features, made strategic tech decisions, and aligned product outcomes with business goals. After the successful launch, the local team took over development of the project, and I now serve as the technical owner.

Public Strategies | Oklahoma City, OK

Product Software Engineer & Data Team Manager [Hybrid]

Apr. 2023 — Mar. 2024

  • Promoted to Product Software Engineer & Data Team Manager, I began overseeing the implementation and maintenance of our internal data systems, including a data-intensive Ruby on Rails application. My team also developed and maintained event-management and marketing modules in MS Dynamics.
  • I collaborated with stakeholders to understand user needs, design software architecture, and ensure proper implementation of product features. I also maintained technical documentation, defined processes, and promoted interdepartmental communication for a cohesive work environment.

Senior Software Engineer [Remote]

Aug. 2022 — Apr. 2023

  • My primary focus was building a robust Rails API to support mobile apps, enabling users to access workshop schedules, rewards, and program content. I collaborated with stakeholders to determine product requirements and frequently engaged in the configuration layer, applying my expertise to troubleshoot and optimize the application for our DevOps team.
  • A project manager and I redirected our efforts to support the Data Team as they consolidated multiple data systems into a unified MS Dynamics instance, addressing technical knowledge gaps and streamlining processes. Our contributions optimized team performance by establishing a Jira workflow, implementing Agile practices, enhancing interdepartmental communication, and developing comprehensive documentation.

Weedmaps | Irvine, CA

Software Engineer III [Remote]

Feb. 2022 — Aug. 2022

  • I started on the Ads team, which helped businesses create and manage ad campaigns via a Rails admin. My key achievement was implementing a RESTful API using Graphiti, which translated requests into GraphQL through a custom adapter, enabling efficient CRUD operations on our internal Ad Server.
  • After completing my work with the Ads team, I was reassigned to a team focused on revamping the user experience for the site and native apps. Despite the brief duration, I made significant contributions, particularly in addressing technical debt for the "Best of Weedmaps" campaign in 2022.
  • My short time here was unfortunately due to a company-wide layoff that eventually impacted about forty percent of employees.

Public Strategies | Oklahoma City, OK

Web Developer [Hybrid]

Aug. 2019 — Feb. 2022

  • I developed various web applications for contracted clients, primarily in the social services sector. Initially working with Laravel, we later transitioned to Ruby on Rails. As a back-end developer, I worked on a Rails API with a React and TypeScript front end, while also maintaining the admin layer through a traditional Rails UI.
  • The applications managed and visualized data through custom reporting, displayed content like webinars and podcasts, organized events in a calendar, and allowed clients to upload and display organizational information. Each site included an admin layer for Technical Assistance representatives to manage all content and data across the platform.
  • I was often responsible for training new members of the back-end team during onboarding. I also created a plugin that helped our Vim users standardize their code, and also extended Vim’s functionality, such as templating, DB connections on a per-project basis, and testing endpoints.

ADFITECH | Edmond, OK

Desktop & Web Application Developer [Hybrid]

Sep. 2015 — Aug. 2019

  • I began my software engineering career building desktop applications with Ruby GTK, using the Ruleby rules engine for task flow and delegating asynchronous tasks to a Redis server. I also maintained C and PHP legacy applications, occasionally porting them to Ruby.
  • Towards the end of my time at ADFITECH, I worked on the company’s client-facing web app built in Ruby on Rails. The platform enabled clients to upload data and images and respond to findings from our Quality Control team.
  • I eventually took on the responsibility of teaching junior developers to write Object-Oriented code in Ruby. I created a training repository where new hires could learn our issue workflow, submit merge requests via GitLab, and familiarize themselves with the command line and common development tools like Git.

Junior System Administrator [On-Site]

Jan. 2015 — Sep. 2015

  • I briefly transitioned into the role of Jr. Linux System Administrator, handling daily maintenance tasks like checking logs, sudo reports, and ensuring the surveillance system functioned properly. I also managed MacOS administration for developers using MacBooks and took on special projects and escalated tickets from the Technical Support desk.
  • During this time, I received the "Shining Star" (employee of the month) award for successfully completing a major project for a high-profile client. The project involved setting up client-provided PCs for our employees, enabling custom security software and RSA, and repairing any PCs damaged during shipping.

Data Import Specialist [On-Site]

Jan. 2013 — Jan. 2015

  • After rejoining ADFITECH, I was promoted to the selections department, where I selected the correct number of loans to be audited based on government standards and client requests. I was also responsible for importing the relevant data into the system once selections were made.
  • I wrote and maintained client-specific scripts to ensure selections met client specifications. Over time, I refined the process, enabling non-technical users to manage it by editing configuration files. This improvement led to my promotion to Jr. System Administrator.

Technical Support [On-Site]

Jan. 2012 — Jan. 2013

  • After a brief leave, I rejoined ADFITECH in the Business and I.T. Services department (BITS), where I handled day-to-day user technical issues, including printers, Thin Clients, email, password resets, and other common problems. I was also responsible for setting up user workspaces, including running and terminating CAT-5 and phone cables.
  • I used this opportunity to automate tasks with command-line and shell scripting, significantly reducing the time spent resolving user issues and, in some cases, enabling users to fix problems independently.

Image Import Specialist [On-Site]

Aug. 2007 — Jul. 2009

  • Initially hired as a shipping/receiving clerk, I was recognized for my strong work ethic and quick learning, which led to an opportunity to join the IT team. ADFITECH was transitioning from paper loan audits to digital images, and I was responsible for converting and importing image files sent via SFTP, CDs, or hard drives into the proper format. This marked the beginning of a new IT sub-division, named "Electron."
  • During this time, I learned to use the terminal, write shell scripts to automate repetitive tasks, and was introduced to Vim. As the workload grew, I also trained new department members, many of whom had no prior technical experience.

Education

University of Central Oklahoma | Edmond, OK

Studied Psychology

Aug. 2003 — May. 2006

  • I studied Psychology in college, which, along with my customer service experience, has enhanced my ability to work with people of all personalities. Although I couldn’t graduate due to personal circumstances, I’m grateful for the outcome, as I likely wouldn't be in this field had I continued with that path.

Skills

Languages and Frameworks

  • Ruby / Rails
  • PHP / Laravel
  • Shell Scripting (Bash / Zsh)
  • VimScript
  • HTML / CSS
  • SQL / GraphQL

Other Relevant Proficiencies

  • Web Development / REST APIs
  • Desktop Application Development
  • Object Oriented Programming (OOP)
  • Git CLI / GitLab / GitHub
  • Command Line
  • Vim
  • Linux / MacOS
  • MySQL / Postgresql
  • Docker / Vagrant
  • Agile Methodology / Scrum