Staff Software Engineer (Java)

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