Download PDF

Summary

Performance-driven and team-oriented professional with a passion for developing quality software and learning more about better development practices. Solution-focused individual who strives to remove any unnecessary bloat in any product. Strong organizational and project management skills allow for delivering powerful results ahead of schedule.

Work experience

April 2017Current

Sr. Software Engineer

Pandera Labs

Chicago, IL

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.

March 2016March 2017

Software Engineer

Uptake Technologies, Inc.

Chicago, IL

March-August, 2016 -- Worked with the Front End core team developing new components and asserting best practices throughout the organization. Introduced new navigation components that inherit routing paths dynamically on application startup. Created new tasks for testing and lint-ing to ensure better practices were used in development. Worked on a project to perform integration/functional tests of the Front End in isolation of the Back End using Protractor. Designed and enforced best practices for the Front End that helped to improve code-consistency and performance. Worked in AngularJS and NodeJS to achieve goals.

August-October, 2016 -- Worked on a Full-Stack Engineering team. Created a "Channel-Joiner" API for the Uptake Rules Engine to process Multi-Variate rules and generate meaningful events data for customers.

October 2016 - February 2017 -- Built a Notifications API for use in the Uptake platform where developers could create their own Notification rules and users could subscribe to receive alerts in real-time. Rules could be single-variable, or multi-variable configurations with the intent of delivering meaningful notifications when they matter most. Integrated the  Events Pipeline (Rules Results and Actions Framework) to generate Notifications created by Events data for those Events that customers were subscribed to receive notifications from.

Worked with Java 8, Spring Boot, Spring JDBC, Hibernate, JUnit, Hamcrest, Selenium, Jenkins, Docker, Node JS, Bower, Open API, HTML 5, SCSS, Angular JS 1, Gulp, and Gradle.

Sep 2014Feb 2016

Software Engineer

Bank of America/ Merrill Lynch - Global Foreign Exchange

Chicago, IL

September 2014 - Feb 2016 -- Worked on a Greenfield project called "CashPro Flow" to introduce Micro-Foreign-Exchange transactions as a new business line for the Global Foreign Exchange team. Targeted at companies or retailers who are looking to enter the global market, or looking to manage their foreign exchange costs more closely by aggregating transactions with values less than a million units. The application is accessed via a robust RESTful API.

Responsible for developing the supporting administrative application for the micro-transaction platform. The application is based in Angular JS 1, and built with Node JS, Bower, and Grunt. The application utilizes modules such as Angular-UI Router, Restangular, Angular-Strap, Ng-Messages and Ng-Resource. Tested with Karma and Protractor with BDD tests written in Jasmine.

Worked with Java 8, Spring Boot, Scala, Node JS, Bower, Swagger JS, HTML 5, Angular JS, and built with Maven and Grunt JS. Enforced 100% code coverage of both Java and JavaScript, as well as full End-To-End test coverage of the entire application with Selenium, JBehave, and DBUnit.

Mar 2014Aug 2014

Software Developer

REDI Technologies

New York, NY

March-August 2014 -- Worked on a Greenfield project to develop a full-stack platform for developers to build and extend applications. The platform utilized Java, Hibernate, Jetty, HTML 5, Sass, and Angular JS, built with Gradle and Grunt JS.

Enforced a set of application design principles so that all applications were consistent across the enterprise so that any developer could learn the codebase of any application easily as the structure would be consistent amongst all applications. Enforced 100% code coverage with unit tests.

Investigated OpenFin as an alternative technology to the current stack.

Worked with Java 7, Angular JS, Node JS, Bower, and Grunt.

Community

2017Current

Organizer

NodeSchool Chicago

Organizer of the Chicago chapter of the NodeSchool community (nodeschool.io/chicago). NodeSchool is an open-source, community-driven, free boot camp to teach people how to build web applications using HTML, CSS, JavaScript, and NodeJS. At our Meetup events, we invite people to follow along with one of the tutorials available on the NodeSchool website (nodeschool.io). We also explore the tools that professionals are using in their day-to-day lives as Front End engineers, as well as the history of web technologies to offer a holistic understanding of how the software development world has gotten to be what it is today. It is free to attend, and open to everyone of any level of programming experience. 

Education

20082013

B.S. Integrated Digital Media

NYU Tandon School of Engineering