Senior Java Backend Developer
New
A
AretumFederal Technology Modernization
McLean, Virginia, United StatesFull-TimeSenior
Salary not disclosed
Apply NowOpens the employer's application page
Job Details
- Experience
- Minimum 5 years of professional backend web development experience
- Required Skills
- PostgreSQLPythonAgileElasticSearchJavaSCRUMCI/CDRESTful APIsTerraformGitLabUnit Testing
Requirements
- Bachelor's degree in Computer Science, Software Engineering, Information Systems, or a related field (or 3 years of additional experience)
- Minimum 5 years of professional backend web development experience
- Demonstrated, deep, hands-on experience developing production backend services in Java, including modern Java features, concurrency, and performance considerations
- Hands-on experience designing and building REST APIs at scale, including authentication, authorization, input validation, error handling, and versioning
- Working experience with Python for backend development or scripting, sufficient to contribute to Python services
- Strong hands-on experience with PostgreSQL (or similar) databases, including schema design, query optimization, indexing strategy, and migration management
- Hands-on experience with Elasticsearch or OpenSearch for search indexing, including index design, query tuning, and operational considerations
- Hands-on experience designing and operating containerized microservices in AWS (Elastic Container Service, RDS, S3, SNS, SQS, and related services)
- Hands-on experience with GitLab (or equivalent) source control and designing CI/CD pipelines with build, test, scan, and deployment stages
- Working experience with Terraform for infrastructure-as-code, including reviewing and authoring infrastructure changes
- Proven track record authoring unit and integration tests and driving test-driven development practices on a team
- Experience leading peer code review, mentoring mid-level developers, and raising the technical quality bar on a team
- Experience working in Agile/Scrum environments, including active participation in sprint ceremonies and backlog refinement
- Demonstrated ability to make sound architectural decisions within a scrum team's scope and to coordinate effectively with solutions architects on larger design questions
- Excellent written and verbal communication skills, with the ability to explain technical tradeoffs to developers, product owners, and federal stakeholders
Responsibilities
- Lead the design of software tools, subsystems, and reusable components within the team's scope, contributing to domain analysis and coordinating implementation with teammates
- Independently interpret software requirements and design specifications, translating them into working, tested, and maintainable code
- Mentor junior-mid level developers and support their growth through pairing, design review, and constructive code review
- Review existing backend programs and propose refinements to reduce operating time, simplify code, and improve current techniques
- Contribute to software development effort and schedule estimation during sprint planning and backlog refinement
- Design, develop, test, and maintain Java backend microservices and REST APIs across the program's cloud-native architecture
- Own the design and tuning of PostgreSQL database schemas, queries, and data access layers for the services you develop, including migration strategy
- Design and implement Elasticsearch / OpenSearch index structures, query patterns, and reindexing strategies for search-driven features
- Integrate backend services with AWS S3 for file storage, AWS SNS and SQS for event-based messaging, and AWS RDS for relational persistence
- Build and maintain containerized Java services that run on AWS Elastic Container Service
- Contribute to Python backend services where the team's work requires it
- Design, implement, and maintain GitLab CI/CD pipelines for backend services
- Author and maintain unit and integration test suites, and drive the team toward meaningful code coverage and test reliability
- Contribute to infrastructure-as-code in Terraform, review infrastructure changes, and help ensure infrastructure evolves safely alongside application code
- Conduct thorough peer code review, providing specific, actionable feedback against agreed coding standards and architectural patterns
- Supervise software configuration management practices within the team's repositories, including branching strategy, versioning, and release tagging
- Participate fully in SAFe Agile ceremonies (Sprint Planning, Daily Standup, Sprint Review, Retrospective, and Backlog Refinement) and contribute to Program Increment (PI) planning
- Break down complex user stories into appropriately sized technical tasks, identify cross-team dependencies early, and track work transparently in the program's Agile tooling
- Support Tier-2 and Tier-3 production issue resolution for backend components developed by the team, leading troubleshooting activities and implementing prioritized fixes
- Coordinate with Triage Engineers, the Solutions Architect, and Product Management on issues that affect the team's services, and contribute to root cause analysis and preventive improvements
- Lead remediation of backend code and dependency security vulnerabilities identified through routine security scanning within required timeframes
- Author developer-friendly documentation for APIs, data models, deployment operations, and operational runbooks
View Full Description & ApplyYou'll be redirected to the employer's site