Sr. Software Engineer
April 2018 - Current -- Implemented automated DevOps using services such as CircleCI, Docker, Terraform, and AWS. Deploy services to multiple environments (develop|staging|production), and deploying serverless Lambda functions.
April 2017 - Current -- Inherited and became the Lead Engineer of a legacy Java Spring Boot sales reporting application and converted the codebase to Kotlin. Developed Java ETL services to seed data from client-generated files. Built export services to generate reports of the state of the application. Worked with the Data team to migrate large Java ingestion services to formal ETL tools (Pentaho, AWS Glue). Built and maintained RESTful APIs used to provide data to a React Redux front end application. Integrated with third-party vendor APIs to provide real-time reporting. Co-architected blue/green database structures so that there is no perceived downtime in the application while ETL processes are still executing. Designed and implemented Spring Batch jobs to execute ETL processes, orchestrated reports, send email reports at client-specified intervals, and integrate security services with third-party vendors. Acted as lead DevOps engineer for Continuous Integration and Continuous Delivery on CircleCI. Orchestrated AWS infrastructure for multiple environments (develop, staging/uat, production).
Worked with Java 8, Kotlin 1.2, ES6, Spring Boot, Spring Data, Spring Batch, Pentaho, Postgres, React, Redux, Gradle, NPM, Yarn, Webpack, CircleCI, Docker, CloudWatch logs, CloudWatch rules, SNS topics, Lambda serverless functions, AWS Batch job executions, EC2 services, ECR, and RDS.