Back-end Engineer2021 - 2021Shoshin Works
Technologies: Java, Spring
- Developed an app that gathers data from multiple sources, inputs this data into an NLP processor, and provides data visualizations to predict the future.
- Integrated with SerpApi to get data from Google services and Zyte API for HTML data processing.
- Created abstract Java components that facilitate the addition of new external services.
- Managed a Java with Spring Data connection to a MongoDB instance on MongoDB Atlas.
Java/Spring Engineer2019 - 2021Wearsafe Labs
Technologies: Spring, Java 8
- Developed Java AWS Lambda functions for processing IoT messages from personal safety devices. Configured AWS IoT rules and Kinesis Stream to interact with the Lambda function.
- Created a Java critical section locking mechanism to handle parallel processing of device messages and avoid concurrent changes on devices.
- Improved the legacy codebase with constant refactoring, reorganization of dependencies, and introduction of unit tests, integration tests, and end-to-end tests. That heavily increased delivery reliability and sped up the deployment cycle.
- Improved the overall development processes with better PR reviews and helped propose a better scrum process by keeping it lean.
- Implemented a solution to avoid duplicate message processing using Memcached on AWS Elasticache.
- Created an end-to-end tester platform to allow testing messages flow from AWS IoT to Kinesis, Lambdas, Java API, and DB.
- Developed a continuous delivery strategy for zero downtime on production deployments allowing a rollback when necessary.
- Created an AWS Lambda function for processing and storing the device's audio data on S3.
- Redesigned DB integration test architecture, enabling tests to run up to five times faster and with 1/3 code lines.
- Implemented an AWS X-Ray tracing service for an API, instrumenting AWS Lambda and external services calls.
Java Architect2020 - 2020Rebel Minds
Technologies: Java, Heroku, Spring
- Developed an MVP application using Spring Boot to send out forms to clients, process their responses, and provide a dashboard for analyzing the responses.
- Structured a microservices architecture using Netflix Eureka.
- Created a deployment pipeline using Github and Heroku.
- Developed REST API integrations with Typeform and Cumul.io.
Java Architect2019 - 2019Dandelion Development
Technologies: Spring Boot, Spring 5, Java 8
- Defined project structure with Spring Boot 2 and developed most of the application.
- Led two other developers ensuring code quality and testability through code reviews.
- Created an integration layer for interacting with ERP and CRM sides using Spring 5's new web client.
- Created test cases structure for each code sector: controllers, database, and entities. Achieved 75%+ overall code coverage.
Java Engineer2018 - 2018Project44
Technologies: Spring, Java 8
- Created definitions of how to integrate with external services from logistics providers, matching our modeling to providers' custom modeling.
- Developed integrations with logistics carriers using an API made by P44 for data parsing/processing.
- Developed unit and integration tests for components using the latest standards.
Java Lead Engineer2017 - 2018Aon Inpoint
Technologies: Spring, Java 8
- Architected a complete Java 8 with Spring Boot project.
- Created REST web services for survey processing, reports, benchmark, and client configurations.
- Developed full project test coverage with multiple scenarios.
- Created an email processing and queuing system for sending out surveys.
- Implemented a multi-language survey system that adapts to each user.
- Implemented user security with JSON Web Token (JWT), including endpoints and authentication.
- Created the continuous integration and deployment pipeline with Docker and CircleCI.
Back-end and Web Developer2016 - 2017GroceryPress
Technologies: AngularJS, Spring, Java 8
- Architected an AngularJS web front-end application using Grunt.
- Structured the deployment pipeline using CircleCI and Cloud66.
- Developed a standalone Java application that runs on clients to extract DB information from legacy Sybase and communicate to an FTP server.
- Created a Spring Batch data integrator that imports data from various clients into a multi-retailer DB.
Java Engineer2015 - 2017Tasting Table
Technologies: Python, AngularJS, Java
- Developed a web application using AngularJS and Bootstrap 3 for creating multiple crops of a single picture.
- Managed Ubuntu Linux servers and Wildfly application server.
- Created REST integration with Imagga.com and Imgix APIs to post-process images.
- Created Node.js tests for Parse.com functions using Mocha, Sinon, and Chai.
- Developed a dashboard that retrieves restaurant information using Foursquare API. Used Spring Boot and AngularJS.
Java Senior Developer and Architect2013 - 2015IBM
Technologies: Java EE
- Handled architecture and development of Jakarta EE components using SOAP and RESTful web services, test-driven development (TDD), JPA (OpenJPA and Hibernate), unit testing (JUnit and JMock), integration testing, and a continuous delivery model.
- Implemented architecture and set up of cloud environments, creating images and a provision/de-provision process. The environments were used as environments for developers hired through the IBM Liquid platform.
- Led development events in the IBM Liquid platform (a crowdsourcing platform of short cycle assignments), creating development specifications, validating solutions provided by developers, and integrating code into the existing one.
- Created and improved processes for automating tasks such as deployments, module packaging, and Websphere management with Python scripting.
- Handled administration and configuration of the Websphere Application Server.
- Worked as a support analyst, providing ongoing support for high-availability production environments.
Java Developer2011 - 2012ADP
- Developed Java components for managing security in ADP's portal application.
- Worked on the migration of a portal platform to a PaaS business model.
- Worked in an agile team with a goal-oriented pace with daily scrum meetings.