Senior Software Engineer
Job Description
Responsibilities
- Design and implement end-to-end features using Java Spring Boot microservices and Angular web applications
- Write clean, testable code with JUnit/Testcontainers, Jasmine/Jest, and Cypress/Playwright for end-to-end testing
- Develop and maintain REST and GraphQL APIs, data access via JPA/Hibernate, caching with Redis, and secure authentication with OAuth2/OIDC and JWT
- Author and optimize Dockerfiles with multi-stage builds and minimal bases; manage image lifecycles in registries
- Own CI/CD pipelines (GitHub Actions, Azure DevOps, Jenkins, or GitLab CI) with tests, scans, artifact versioning, and automated rollbacks
- Provision and manage environments through Infrastructure as Code and configuration-as-code tools
- Embed shift-left security practices including SAST/DAST, dependency and container image scanning, secrets management, and OWASP top-10 safeguards
- Optimize cost and efficiency by right-sizing resources, reducing image sizes and startup times, and monitoring cloud and container spend
- Build internal tooling and automation (Java/Node/Python/Bash/Go) to support development workflows, releases, and compliance checks
- Automate database migrations with Liquibase or Flyway, manage schema versioning and test data
- Collaborate with Product, Design, QA, and Security; perform code reviews, mentor engineers, and maintain documentation and runbooks
- Leverage AI-assisted coding and testing tools and use log analysis to speed delivery and support responsible root-cause analysis
Requirements
- Bachelor's degree in Software Engineering, Computer Science, or equivalent experience
- 6+ years of software engineering experience
- 5+ years developing applications with Java (Spring Boot) and Angular
- 4+ years of front-end development with Angular (components, RxJS, routing, forms, state management, testing with Jasmine/Jest)
- 4+ years working with relational databases (PostgreSQL, MySQL, SQL Server) and ORM (JPA/Hibernate); exposure to NoSQL technologies (Redis, MongoDB)
- 4+ years hands-on experience with Docker and containerization, including image optimization and registry workflows
- 4+ years building and maintaining CI/CD pipelines with integrated testing and security scanning
- 4+ years using Infrastructure as Code and configuration-as-code tools (Terraform, Bicep, CloudFormation, Helm, Kustomize)
- 4+ years delivering automated testing across unit, integration, and end-to-end frameworks (e.g., JUnit, Testcontainers, Cypress, Playwright)
- 4+ years implementing observability practices with metrics, logging, and tracing using tools such as OpenTelemetry, Prometheus, and ELK/EFK
- 3+ years of Linux, networking fundamentals, HTTP, and distributed systems
- 2+ years strong experience in Java fundamentals and Spring Boot modules (REST, Security, Data/JPA, Actuator)
- 1+ year of experience with AI-assisted engineering tools and responsible usage practices
Technologies
- Java
- Spring Boot
- Angular
- JUnit
- Testcontainers
- Jasmine
- Jest
- Cypress
- Playwright
- REST
- GraphQL
- JPA
- Hibernate
- Redis
- OAuth2
- OIDC
- JWT
- Docker
- Terraform
- Bicep
- CloudFormation
- Helm
- Kustomize
- GitHub Actions
- Azure DevOps
- Jenkins
- GitLab CI
- Liquibase
- Flyway
- Linux
- OpenTelemetry
- Prometheus
- ELK/EFK
- PostgreSQL
- MySQL
- SQL Server
- MongoDB
Benefits
- Comprehensive benefits package
- Incentive and recognition programs
- Equity stock purchase
- 401k contribution
Soft Skills
- Excellent communication and collaboration with Product, Design, QA, and Security teams
- Problem-solving mindset with a bias toward automation and simplification; strong debugging across the stack
- Mentorship and code review experience; advocates for best practices and high code quality
- Comfortable in agile environments, able to manage priorities and own outcomes
- Telecommuting personnel must adhere to UnitedHealth Group's Telecommuter Policy