Tech Lead
2020 - PRESENTACCELaero Portfolio- Played a key role in feature development, performance testing, performance tuning, and facilitation for multiple government certifications during and after the inaugural production release of the aeroCONNECT aviation messaging system.
- Worked on production stabilization and change and feature request development for the aeroPRICE airline ticket pricing system.
- Developed flows, such as inventory roll forward, inventory transfer, and reprotection of aeroINVENTORY, the airline seat inventory system.
- Provided Level 3 support on a monthly roster basis for the aeroCONNECT airline messaging system and the aeroPRICE airline pricing system.
- Conducted employee training sessions on Apache Kafka.
- Participated in recruiting, training, ranking, and placement of experienced, fresh, and undergraduate developers.
Technologies: Java, Spring Boot, Apache Kafka, PostgreSQL, gRPC, Protobuf, REST, Docker, JUnit, Mockito, SonarQube, JProfiler, Couchbase, Microservices Architecture, Spring Microservice, Microservices, Spring Data JPA, Web Platforms, APIs, Solution Architecture, SQL, Architecture, Software Architecture, OAuth 2, Scrum, IntelliJ IDEA, Jira, PowerMock, RESTful APIs, NoSQL, Message Queues, REST APIs, Technical Hiring, Interviewing, IntelliJ, Code Review, Source Code Review, Back-end, Containers, Design Patterns, Distributed Systems, Task AnalysisSenior Software Engineer
2018 - 2019ACCELaero Portfolio- Worked on architectural design, technology selection and training, development, testing, production stabilization, and support of microservices and the aeroCONNECT stream processing-based messaging system,. using Spring Boot, Kafka, and Couchbase.
- Conducted employee training and evaluation on the Couchbase NoSQL database.
- Enhanced the aeroLINE FLEET aircraft rotation and routing system to automatically reschedule flights based on the receiving air traffic flow and capacity management (ATFCM) messages.
Technologies: Java, Spring Boot, Apache Kafka, AWS, Couchbase, gRPC, Protobuf, REST, JMS, IBM MQ, ANTLR, Docker, SMTP, POP3, JUnit, Mockito, SonarQube, Jenkins, Jira, Microservices Architecture, Spring Microservice, Microservices, Spring Data JPA, Web Platforms, APIs, Solution Architecture, SQL, Architecture, Software Architecture, Scrum, IntelliJ IDEA, PowerMock, RESTful APIs, NoSQL, Message Queues, REST APIs, Redis, Technical Hiring, Interviewing, IntelliJ, Code Review, Source Code Review, Back-end, Containers, Design Patterns, Distributed Systems, Task AnalysisResearch and Development Engineer
2016 - 2018ACCELaero Portfolio- Researched and developed genetic algorithm-based airline crew scheduling and rostering algorithms in Java to distribute duties and pairings among different types of flight and cabin crew.
- Devised mathematical formulae to calculate roster cycle targets for flight and cabin crew members on entities, such as flying hours and duty hours, while respecting their annual, quarterly, and monthly limits on flying and duty hours.
- Programmed crew duty and fatigue-related rules in the crew rostering system back end in Java to facilitate the generation of legal rosters.
- Analyzed airline operation manuals to identify the requirements of new client airlines and accommodate their crew management and rostering requirements.
- Created BIRT reports, such as journey logs and duty sheets, generated from airline crews' duty data.
- Assisted technical writers with technology and domain knowledge while they compiled user manuals for the airline crew management system.
Technologies: Java, Spring Boot, Oracle Database, BIRT, Algorithms, Hibernate, Web Platforms, SQL, Scrum, IntelliJ IDEA, Jira, PowerMock, REST APIs, IntelliJ, Back-end, Design PatternsResearch and Development Intern
2015 - 2016ACCELaero Portfolio- Worked on mathematical models and algorithms that automatically distribute cargo inside an aircraft and achieve an aircraft's safe and efficient weight and balance configuration. I used FICO Xpress and Java in these projects.
- Developed algorithms that solved the aircraft rotation and routing problem using FICO Xpress and Java.
- Built an IATA SSIM message parser to automatically extract data in a standard SSIM message using the JavaCC parser generator.
- Proposed a graphical solution to enable crew planners and schedulers to independently program the crew and fatigue-related rules into the automated crew rostering system.
- Researched machine learning-related algorithms to improve the quality of the flight and cabin crew rosters in automatic rostering concerning fairness and robustness.
- Investigated the suitability of graph databases (Neo4j) over relational databases (Oracle Database) to represent and store data related to airline crews and duties.
Technologies: FICO Xpress, Linear Programming, Java, Oracle Database, JavaCC, Algorithms, SQL, IntelliJ IDEA, NoSQL, Back-end