Digital Platform for Annuity Products
Worked as a consultant developer on a team assigned to build a digital platform for annuity products as part of a bank’s efforts to modernize its offerings. Implemented event-driven architecture using Kafka as the messaging platform. Applied stream processing of events to handle the annuities’ asynchronous nature and complex business rules. Technologies used: Kotlin, Ktor, Exposed, Node.js, Express, PostgreSQL, Kafka Streams, Kafka Tables, React, Grafana, Kibana, AWS, Kubernetes, Docker, and TeamCity. Among the challenges faced were race conditions, complexities of automated testing of event-driven architectures, ensuring data consistency, managing an increasing number of microservices, and concerns that come from implementing a time-sensitive system. (Sep 2018-Jun 2019)
Identity Protection Provider
Joined a team developing core capability APIs to modernize an identity protection provider. The team was in charge of redesigning and decoupling their existing capabilities following a delivery platform strategy so that they could scale to more users and deliver features faster. Technologies used: Node.js, Express, Java, Spring Boot, SQL Server, Datadog, Kubernetes, Istio, OPA, Auth0, Kafka, CircleCI, HashiCorp Vault, Helm, and Docker. Implemented event driven architecture to time-decouple the microservices. (Aug 2019-Aug 2020)
Inventory Management System
Acting as a consultant tech lead to help a Fortune 500 company modernize its inventory management offering. Designing and implementing core capability APIs through a set of microservices that expose REST endpoints and events. Challenges faced include navigating constantly changing priorities from the business, continuously migrating data and capabilities from the old platforms through a strangler pattern, supporting legacy systems, implementing complex domain rules, ensuring high availability, and managing alignment with all the different teams. Technologies used: Kotlin, Java, Spring Boot, PostgreSQL, Kafka, Kafka Streams, CircleCI, Istio, Datadog, GitHub Actions, Terraform, HashiCorp Vault, Spring WebFlux, SQL Server, Helm, AWS, and Kubernetes. As part of the same engagement, worked as an interim engagement lead helping align 24 people distributed in 4 different teams. The main responsibilities included orchestrating performance reviews, taking care of the teams’ health, guaranteeing proper delivery, ensuring people’s growth, and analyzing risks. (Aug 2020 - present)