Senior Full Stack Software Engineer (Remote)
Senior Full Stack Software Engineer
Team: Client Engagement Services
Location: Remote, Boston, MA, Chicago, IL, Dallas, TX, Houston, TX, Jacksonville, FL, Los Angeles, CA, New York City, NY, Richmond, VA, Washington, D.C., Seattle, WA, San Francisco, CA, Austin, TX, San Antonio, TX, Atlanta, GA
Commitment: Full time
Workplace Type: remote
Salary:
Location Requirement: Must be a resident of the continental United States.
Compensation
Key Responsibilities
- API Development: Design, develop, and maintain robust, secure, and scalable RESTful APIs using Java and Spring Boot, integrating with Azure services and external platforms through Azure API Management.
- Full Stack Development: Build responsive, high-performance front-end and back-end applications using modern frameworks and technologies (Java, Spring Boot, React, Node.js, etc.), leveraging Azure cloud services.
- Automated Test Development: Develop automated API and microservices tests, including contract testing and service virtualization, as well as UI tests using modern automation tools and frameworks.
- Cloud-Native Architecture: Design and implement scalable, cloud-native applications on Microsoft Azure, leveraging Azure App Service, Azure Functions, Azure Container Apps, and Azure Kubernetes Service (AKS), following best practices for security, reliability, scalability, and performance.
- Containerization: Build, deploy, and manage containerized applications using Docker, Azure Container Registry (ACR), Azure Container Apps, and Azure Kubernetes Service (AKS), including container orchestration and automated scaling.
- Distributed Systems: Design and develop scalable, distributed systems on Azure that support high availability, fault tolerance, resilience, and disaster recovery.
- Event-Driven Architecture: Implement event-driven architectures using Apache Kafka, Azure Event Hubs, Azure Service Bus, and Azure Event Grid to enable real-time data processing, asynchronous communication, and loosely coupled services.
- Microservices: Design, develop, and maintain independently deployable microservices using Java and Spring Boot, leveraging Azure-native infrastructure, service discovery, API gateways, and distributed observability.
- Unit Testing: Write and maintain comprehensive unit and integration tests for front-end and back-end applications using frameworks such as JUnit, Mockito, Jest, and React Testing Library to ensure code quality and stability.
- CI/CD Pipelines: Build and maintain continuous integration and continuous deployment pipelines using Azure DevOps Pipelines, GitHub Actions, and infrastructure-as-code tools such as Terraform and Azure Bicep.
- Database Design & Optimization: Design, implement, and optimize relational databases (Azure Database for PostgreSQL, Azure SQL Database, MySQL) and NoSQL databases (Azure Cosmos DB), focusing on performance, scalability, availability, and data integrity.
- Collaborate: Work closely with product managers, UX/UI designers, architects, and other engineers to deliver high-quality products on schedule, following Agile development methodologies.
- Code Reviews: Participate in code reviews using Azure DevOps Repos or GitHub, providing constructive feedback and ensuring high standards for code quality, security, performance, and maintainability.
Skills and Qualifications
- Experience: 8+ years of experience as a Full Stack Software Engineer or in a similar role.
- API Development: Strong proficiency in designing, developing, and integrating RESTful APIs and GraphQL services, including experience with Azure API Management.
- Containerization: Expertise in Docker and container orchestration technologies, including Kubernetes, Azure Kubernetes Service (AKS), Azure Container Apps, and Azure Container Registry (ACR).
- Azure Cloud Services: Proven experience with Microsoft Azure services, including Azure App Service, Azure Functions, Azure Virtual Machines, Azure Storage, Azure SQL Database, Azure Service Bus, and Azure API Management.
- Distributed Systems: Experience designing and developing scalable, highly available distributed systems and event-driven architectures using Azure Service Bus, Azure Event Hubs, Azure Event Grid, or Apache Kafka.
- Programming Languages: Strong programming skills in Java (Spring Boot), JavaScript/TypeScript (React, Node.js), and related technologies. Experience with Python or Go is a plus.
- Unit Testing: Experience with unit and integration testing frameworks such as JUnit, Mockito, Jest, Mocha, and React Testing Library for front-end and back-end applications.
- CI/CD Pipelines: Experience building and maintaining automated CI/CD pipelines using Azure DevOps Pipelines, GitHub Actions, Jenkins, or similar tools.
- Database Technologies: Experience designing and optimizing relational and NoSQL databases, including Azure Database for PostgreSQL, Azure SQL Database, MySQL, and Azure Cosmos DB.
- DevOps & Infrastructure as Code: Solid understanding of DevOps practices, including CI/CD automation, Infrastructure as Code (Terraform, Azure Bicep), monitoring, and observability using Azure Monitor and Application Insights.
- Front-End Development: Proficiency with modern front-end frameworks, particularly React, with familiarity in Angular or Vue.js.
- Microservices & Serverless: Experience designing and implementing microservices and serverless architectures using Java, Spring Boot, Azure Functions, Azure Container Apps, and Azure API Management.
- Security & Performance: Knowledge of cloud security best practices, including Microsoft Entra ID, Azure Key Vault, managed identities, role-based access control (RBAC), and application performance optimization.
- Problem-Solving: Strong analytical and troubleshooting skills, with the ability to diagnose and resolve complex technical issues across distributed applications and cloud infrastructure.
- Agile Methodologies: Experience working in Agile development environments, including Scrum, sprint planning, iterative delivery, and continuous improvement.
- Communication & Collaboration: Excellent communication and collaboration skills, with the ability to work effectively across engineering, product, architecture, and business teams.
Skills
- Agile
- AKS
- Angular
- API
- Automation
- AWS
- Azure
- Azure Application Insights
- Azure DevOps
- Azure Functions
- Azure Monitor
- Azure Service Bus
- Bicep
- CI/CD
- Cloud
- Cloud Native
- Cloud Security
- Containerization
- Cosmos Db
- Cybersecurity
- DevOps
- Distributed Systems
- Docker
- Entra ID
- Event Driven Architecture
- GitHub
- GitHub Actions
- Go
- GraphQL
- Infrastructure as Code
- Integration Testing
- Java
- JavaScript
- Jenkins
- Jest
- JUnit
- Kafka
- Kubernetes
- Microservices
- Mocha
- Mockito
- MySQL
- Node.js
- NoSQL
- Observability
- PostgreSQL
- Python
- RBAC
- RDBMS
- React
- React Testing Library
- REST
- Scrum
- Serverless
- Spring
- SQL
- Terraform
- TypeScript
- Unit Testing
- Vault
- Virtualization
- Vue