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, adhering to established coding standards, architectural patterns, and the team's Definition of Done
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, including appropriate logging, metrics, health checks, and operational readiness for deployment to isolated VPC networking environments
Contribute to Python backend services where the team's work requires it, applying the same standards of testability, readability, and maintainability
Design, implement, and maintain GitLab CI/CD pipelines for backend services, including build, test, static analysis, container image scan, and deployment stages
Author and maintain unit and integration test suites, and drive the team toward meaningful code coverage and test reliability rather than vanity metrics
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: 30 calendar days for High-Priority vulnerabilities and 180 calendar days for Medium-Priority vulnerabilities
Author developer-friendly documentation for APIs, data models, deployment operations, and operational runbooks in the program's collaboration tools
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 when team priorities require it
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.