We are looking for an experienced Senior Software Engineer to design, develop, integrate, test, and maintain modern software applications and system components. The ideal candidate will have strong software engineering fundamentals, hands-on cloud and DevOps experience, and the ability to build scalable, reliable, and maintainable solutions.
Key Responsibilities
- Design, develop, test, deploy, and enhance software applications and reusable system components.
- Develop and integrate RESTful APIs and system-to-system integrations.
- Design and optimize relational databases, SQL queries, data models, and data transformation processes.
- Build and manage cloud-based solutions using AWS and/or Azure.
- Implement infrastructure as code using Terraform, CloudFormation, or similar tools.
- Develop and maintain CI/CD pipelines, automated deployments, and release processes.
- Apply DevOps best practices, including Git, branching strategies, Docker, and containerization.
- Develop data mapping, transformation, validation, and transaction-processing logic.
- Design solutions with a focus on scalability, reliability, security, maintainability, and performance.
- Collaborate effectively with technical and cross-functional teams to deliver high-quality solutions.
- Support system configuration, optimization, troubleshooting, and ongoing application improvements.
Required Qualifications & Technical Skills
- Strong programming experience with Python and/or Java.
- Strong experience developing RESTful APIs and system integrations.
- Advanced knowledge of relational databases and SQL.
- Experience with data mapping, transformation, and validation.
- Hands-on experience with AWS and/or Azure cloud environments.
- Experience with Infrastructure as Code, preferably Terraform or CloudFormation.
- Strong understanding of DevOps practices, CI/CD, Git, Docker, and release management.
- Familiarity with healthcare interoperability standards, particularly FHIR and HL7 v2 messaging.
- Strong understanding of software architecture, system engineering, optimization, scalability, reliability, and maintainability.
- Excellent communication, collaboration, technical documentation, and problem-solving skills.