Senior Software Engineer
Posted 4hrs ago
Employment Information
Report this job
Job expired or something wrong with this job?
Job Description
Senior Java Engineer building Java, Spring Boot, and Kafka microservices for Empower’s retirement and financial services platform. Modernizing enterprise applications in AWS.
Responsibilities:
- Design, develop, test, and maintain scalable enterprise backend applications using Java, Spring Boot, Spring Cloud, REST APIs, and microservices architecture
- Develop and modernize enterprise applications supporting Retirement and Financial Services business capabilities
- Build and integrate Apache Kafka-based event-driven and streaming microservices using Java
- Design, develop, and maintain RESTful APIs and distributed microservices
- Develop cloud-native Java applications and event-driven integrations in AWS environments, including Amazon MSK where applicable
- Modernize legacy applications into scalable, maintainable, resilient microservices
- Design, develop, and optimize application database integrations, including Oracle databases where applicable
- Implement resiliency patterns including retries, exception handling, idempotency, fault tolerance, and observability
- Troubleshoot application, API, Kafka integration, database, and production performance issues
- Support CI/CD pipelines using Jenkins and GitLab Runner
- Participate in architecture discussions, technical design, code reviews, unit testing, integration testing, and software engineering best practices
- Collaborate with architects, developers, DevOps engineers, QA teams, and business stakeholders
- Contribute to Agile processes including sprint planning, development, testing, and continuous improvement
- Provide technical guidance and mentor other engineers as appropriate
Requirements:
- Bachelor's degree in Computer Science or a related field, or equivalent training and experience
- 5+ years of hands-on Java software development experience, including backend application development and enterprise software engineering
- Strong hands-on experience with Java, Spring Boot, and Spring Cloud
- Experience designing, developing, and maintaining distributed microservices architectures and RESTful APIs
- Practical Java-based Apache Kafka experience, including producer and consumer integration, asynchronous message processing, and event-driven communication
- Understanding of distributed systems, microservices design patterns, application resiliency, fault tolerance, and troubleshooting
- Experience deploying Java backend applications in AWS or other cloud environments
- Experience troubleshooting application performance, distributed services, API integrations, and production issues
- Understanding of SDLC, Agile methodologies, technical design, code reviews, and software engineering best practices
- Strong analytical, problem-solving, debugging, collaboration, and communication skills
- Ability to work effectively with cross-functional engineering teams
- Preferred experience with Java 21, Amazon MSK, Spring Cloud Stream, Spring Batch, Confluent Cloud, Amazon Kinesis, Apache Pulsar, Kafka Streams, Apache Flink, Spark Structured Streaming, Kafka Connect, Debezium, CDC, Schema Registry, Apache Iceberg, Delta Lake, Snowflake, BigQuery, ETL/ELT, data modeling, Docker, Kubernetes, Terraform, Jenkins, GitLab Runner, CI/CD automation, event sourcing, CQRS, dead-letter queues, circuit breakers, resilient event-processing patterns, technical leadership, mentoring, AI-assisted streaming operations, or regulated enterprise environments
Benefits:
- Flexible work environment
- Fluid career paths
- Internal mobility opportunities
- Purpose, well-being, and work-life balance focus
- Welcoming and inclusive work environment
- Volunteering opportunities















