Responsibilities
Technical Leadership & Architecture
- Lead the architecture, design, and implementation of complex backend systems and microservices
- Drive technical decision-making and establish engineering best practices across the team
- Evaluate and recommend new technologies and frameworks to meet product roadmap and platform goals
- Conduct and lead design reviews and architecture discussions with cross-functional stakeholders
Development & Delivery
- Hands-on development of core backend services using Java and the Spring ecosystem
- Build and maintain microservices architecture with emphasis on high availability and performance
- Design and implement robust data integration and ETL pipelines
- Work with technical project managers and product teams to break down features into detailed user stories and development tasks
- Provide technical estimates and contribute to release planning and sprint commitments
- Integrate services with external systems, manage version control, and ensure smooth deployments
Quality & Best Practices
- Champion engineering excellence through code reviews, design reviews, and knowledge sharing
- Advocate for and implement DevSecOps best practices using CI/CD pipelines
- Ensure code quality, security, and performance standards are met across all deliverables
- Drive automation testing strategies and implementation
- Monitor and improve engineering metrics (DORA metrics, code quality, etc.)
Qualifications
- Bachelor’s degree in Computer Science, Software Engineering, or related field
- 5+ years of backend expertise in Java with deep knowledge of:
- Spring ecosystem (Spring Boot, Spring Data, Spring Cloud)
- Microservices architecture and design patterns
- RESTful API design and implementation
- Distributed systems, asynchronous and parallel processing
- Message queues and event-driven architectures (Kafka, RabbitMQ)
- Experience with the following is preferred but not required:
- Integrating services with Identity & Access Management systems, OIDC providers, security token services
- Setting up ETL pipelines for pulling data from disparate systems
- Experience with GraphQL platforms (Hasura, Apollo)
- Experience with handling on-call incidents
Technical Skills
- Strong foundation in computer science fundamentals: data structures, algorithms, and design patterns
- Solid understanding of Java (17+), Spring ecosystem, JPA/Hibernate and ORM patterns
- Proficiency with database technologies:
- Relational databases (PostgreSQL)
- Caching solutions (Redis)
- Experience with containerization and orchestration (Docker, Kubernetes)
- Experience designing and implementing data pipelines and ETL processes
- Knowledge of API gateway patterns and service mesh architectures (Apigee, Istio, etc.)
- Experience with cloud platforms (AWS, Azure, GCP)
DevOps & Quality
- Automated testing experience (JUnit, TestNG, integration testing)
- Strong DevSecOps mindset with experience in:
- CI/CD pipelines (GitHub Actions, Jenkins, GitLab CI, etc.)
- Infrastructure as Code (Terraform)
- Monitoring and observability (Prometheus, Grafana)
- Experience with security best practices:
- Static code analysis tools (SonarQube, Apiiro)
- Dependency scanning (NexusIQ)
- DAST scans and penetration testing concepts
- Secure coding practices and OWASP guidelines