- Bachelors degree in computer science or related field and 10+ years of relevant industry experience
- Solid programming skills in Enterprise Java frameworks implementing microservices and applying object-oriented principles for application design
- Understanding of operating distributed data systems at scale such as event-driven solutions, lambda services and so on.
- Expertise building scalable implementations with modern data processing frameworks and relational databases
- Knowledge of professional software engineering practices throughout the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Experience working with Kafka/Rabbit MQ.
- Architecting and developing highly reliable, fault-tolerant distributed applications with focus on performance and scale in the Cloud.
- Demonstrated understanding of fast-paced Agile principles with technical designs, iterative development, and code reviews
- Building microservices using Spring/Spring boot framework including Spring JPA, Spring Batch, Spring Security, Spring Cloud, Spring Data Stream etc.
- Experience working with No SQL database such as Couchbase, Redis, Cosmos or Mongo.
- Experience working with SQL database such as Oracle or MySQL or Postgress.
- Experience working with IDE such as Eclipse, Spring tool Suites, DBeaver, InteliJ.
- Experience working with messaging application such IBM MQ, Rabbit MQ, JMS, Solace.
- Experience building and optimizing production grade data pipelines (stream processing and batch) to prepare datasets at scale for data analysis, modeling, and optimization.