Senior Software Engineer - Cloud
Role details
Job location
Tech stack
Job description
The Senior Software Engineer, Cloud will work with a modern tech stack on a Software as a Service (SaaS) cloud platform that strives to improve the health and well-being of users in over 49 countries. The core platform consists of systems housed in a large-scale environment responsible for processing billions of tasks every day. Senior Software Engineer, Cloud will have strong leadership ability and bring a passion for software engineering to help shape the direction of the team.
We highly value versatility and a continuous learning mindset, along with the ability to empower fellow team members. You will contribute to building scalable, highly available, efficient, and secure cloud solutions for a medical device SaaS.
WHAT YOU'LL WORK ON
- Learn and improve our existing Go-based health care platforms.
- Design and implement services and components utilizing Go for cloud-based platforms.
- Developing high-volume, low-latency services for a global health care platform
- Collaborate with internal and external partners to develop and integrate with APIs that empower users to share and utilize their medical data in partner systems.
- Design and implement unit testable code that is highly maintainable.
- Collaborate directly with InfoSec to design and implement secure solutions.
- Collaborate with both internal and external team members to shape and define API contracts.
- Provide new ideas and insight in collaboration with the data services team.
- Ensure performance, uptime, and scale, maintaining high standards of code quality and thoughtful design.
- Contribute to significant architectural and operational decisions in collaboration with the Architecture team
- Build out internal tooling and APIs to make business and engineering processes easier, faster, and safer.
- Implement systemic changes to align existing systems with current architectural goals.
- Create diagrams, flowcharts and models that illustrate the internal design and workflow of solution components.
- Collaborate as an engaged member of an agile team, realizing features through development, test, and delivery.
- Engage in technical planning, design, and code reviews including peer code review of Pull Request
- Stay current with emerging trends, making recommendations as needed to help the organization innovate.
Requirements
- Bachelor's degree in computer science, Information Technology, other relevant fields.
- 5+ years of professional software development experience in an Agile environment, including time spent in technical residency programs.
- Familiarity with data design and database technologies such as SQL Server, Postgres or similar.
- Software development experience with Go. Strong knowledge of idiomatic Go and best practices. Good knowledge of concurrency in Go - goroutines, channel patterns, Go ecosystem, and tools and frameworks.
- Experience contributing to a scalable architecture/design of existing and new systems that are highly available and easy to maintain and monitor.
- Experience designing, implementing, and maintaining highly complex asynchronous messaging and Back End processing jobs.
- Practical experience and understanding of working with and developing RESTful APIs and microservices.
- Ability to work well with a team in a high-performance organization.
- Comfortable working asynchronously with a distributed team
- Excellent written, verbal and listening communication skills
- A willingness to learn new software development languages to meet goals and objectives.
- Strong Computer Science fundamentals and experience with software development
- Eagerness to contribute beyond experience level.
PREFFERED
- Practical Knowledge of Linux
- Exposure to Kubernetes/Docker or other container services
- Experience with open-source software development
- Experience working with relational datastores such as SQL Server, PostgreSQL.
- Experience working with Confluence and JIRA.