Location: Alexandria, VA – Hybrid (Candidates must be local to the area)
Duration: 12+ Months
Employment Type: W2/C2C Contract
Job Summary
We are seeking an experienced Senior Software Developer to design, develop, deploy, and support scalable enterprise applications and cloud-based solutions. The ideal candidate will have strong expertise in Java 11/17/21, Spring Boot, microservices, RESTful APIs, Microsoft Azure, and relational databases.
The candidate will be responsible for building secure, high-performance applications, integrating distributed enterprise systems, implementing CI/CD pipelines, and troubleshooting production issues. Experience with large-scale transit systems, real-time data processing, or public-sector environments is highly desirable.
Required Skills and Qualifications
- 7+ years of professional software development experience.
- 5+ years of hands-on experience with Java 11 or later (Java 11/17/21), Spring Boot, and the Spring Framework.
- 5+ years of experience developing RESTful APIs, microservices, and distributed enterprise applications.
- Strong knowledge of object-oriented design, design patterns, multithreading, concurrency, and asynchronous processing.
- Experience working with JSON, XML, HTTP/HTTPS, WebSockets, and third-party API integrations.
- 5+ years of experience with SQL and relational databases, including Microsoft SQL Server or PostgreSQL.
- Proven experience troubleshooting application performance, memory utilization, and production issues.
- Hands-on experience with Git and GitHub, including branching strategies, pull requests, and release management.
- 3+ years of experience developing, deploying, and supporting applications on Microsoft Azure.
- Experience with Azure App Service, Azure Functions, Azure Container Apps, and Azure Container Registry.
- Experience with Azure SQL Database, Azure Storage, Key Vault, Azure Monitor, and Application Insights.
- Experience building CI/CD pipelines and automated testing using GitHub Actions or Azure DevOps.
- Experience with Maven or Gradle and Docker‑based containerized deployments.
Key Responsibilities
- Design, develop, and maintain enterprise-grade applications using Java, Spring Boot, and microservices architecture.
- Build and maintain secure, scalable RESTful APIs and integrate distributed enterprise systems.
- Develop and deploy cloud-native applications using Microsoft Azure services.
- Implement and maintain CI/CD pipelines, automated testing, and containerized deployments.
- Work with relational databases to develop efficient queries, optimize performance, and maintain data integrity.
- Monitor application health, investigate production incidents, and resolve performance and reliability issues.
- Implement security best practices using Azure Key Vault, Microsoft Entra ID, and related cloud services.
- Collaborate with cross-functional teams to deliver reliable, maintainable, and high-performing solutions.
- Support real-time data integrations and transit‑related platforms where applicable.
- Contribute to application documentation, code reviews, release management, and continuous improvement initiatives.