Senior Software Engineer
CurrentContributed to the development of Promoboxx's retailer engagement and digital marketing platform, which enables a brand to provide digital marketing material to their independent retailers to post on social and ad channels.• Developed new complex features (independently and as a team), including gathering requirements, working with product managers, evaluating technical options, writing technical design plans, setting up cloud infrastructure, developing new code, improving and refactoring existing code, developing automated tests, manually testing, working with software testers and deploying software.• Recent work includes:o Developing and maintaining services in Ruby on Rails and Go, including developing REST APIs, modeling data objects in MySQL and PostgreSQL, and integrating with third party APIs, such as Facebook, Twitter and Instagram to facilitate posting on social channels.o Creating an external REST API to communicate with our existing services, to allow customers to access and update internal data, using AWS Lambda and API Gateway, JavaScript and Terraform.o Modernizing multiple Rails applications by upgrading versions of Ruby and Rails, adding the ability to deploy Docker images of both new and old applications to allow for coordinated switch over, updating code and library dependencies, and managing testing and final deployment.o Upgrading the version of Sidekiq (Ruby async job framework), including implementing code to prevent and retry stuck jobs, auditing all jobs, rewriting jobs as needed to be faster, and ensuring idempotency to allow for rerunning of failed jobs.o Converting an unmaintained Node.js application which scrapes data from Facebook, Twitter and Instagram, to Rails, while adding features, fixing existing bugs, and refactoring code to improve readability and maintainability.o Implementing code to use the Instagram API to allow posting of content to Instagram.o Decomposing monolithic Ruby on Rails application into Go microservices.