After watching the drone footage of San Francisco in burning orange skies due to wildfires, with the Blade Runner soundtrack playing on top of it, I decided to look for an engagement with a company helping to do something to address climate change. This is how I learned about Leap Energy which provides solutions for connecting distributed energy resources to wholesale energy markets in order to make the electric grid more resilient.

In the role of Technical Lead I focused on projects in the following two areas:

  • infrastructure modernization
    • migration of the self-hosted customized VPN server to a cloud offering (vendor selection, user migration)
    • migration of the self-hosted Kafka cluster to Confluent Cloud (vendor selection, data migration, integration with the monitoring system, service migration and coordinated roll-out)
    • migration of the self-hosted elasticsearch cluster to elastic cloud (vendor selection, data migration, service migration, coordinated roll-out)
  • microservice architecture modernization
    • introduction of ADRs in order to document architecture decisions
    • introduction of GRPC as a means for service-to-service communication (replacing direct database access across services and an experimental service-to-service communication via Kafka topics) between Spring Boot services
    • development of a service protocol registry and distribution mechanism (based on protocol buffers) to allow contract-first design and development of the various services
    • introduction of Gradle with Kotlin support as a build tool as a replacement to maven and porting multiple services
    • introduction of jOOQ as a replacement to Hibernate for database access

Tools used: Kotlin, Java, React, Typescript, Go, Python, Spring Boot, Microservices, Bash, Gradle, Maven, GRPC, Kafka, SQL, elasticsearch, logstash, filebeat, Terraform, AWS