Site Reliability Engineer
Site Reliability Engineer (#4860)
This is an exciting opportunity to join a rapidly growing healthcare information technology business as a Site Reliability Engineer. You will play an important role in supporting and transforming the core technology of a leading healthcare SaaS product company, bringing thought leadership and new techniques to a challenging and exciting DevOps role. We are looking for a dynamic individual who has a passion for the art of DevOps, release management, and production environment support and standards. This is a tremendous opportunity to help transform the public facing user experience of a leading healthcare technology company.
The Site Reliability Engineer will play a key role in aiding UpToDate to support existing technology project infrastructure and to help develop the strategy for our next generation efforts. This person will support and augment the current team, bridge the technologies between current and next, and help lead the strategy and implementation of new technologies. These improved tools, technologies, and processes will enable us to deliver Product and Infrastructure Roadmaps in a more nimble, predictable, and quality fashion. In addition, this role will help us in our ability to provide around the clock operational system support for current and new systems.
Essential Duties and responsibilities
- Design and implement future state SaaS / IaaS architecture.
- Enable and implement continuous delivery and continuous integration.
- Analyze a variety of approaches to a DevOps problem – provide pros and cons of different approaches to the team to arrive at an agreed upon direction.
- Develop and administer tools to enable rapid micro service deployment. Create operations handbook as required for others to assist in the administration.
- Collaborate to incorporate automated unit, integration, functional, and performance testing into the continuous integration process across multiple projects.
- Collaborate with the Development, Project Management, and Product Management teams to align projects, releases, patches, and other efforts.
- Evolve and automate our processes to provide increased flexibility related to the development and testing of multiple simultaneous projects.
- Development Project Support
- Build, maintain and deploy the application level software in our development and test regions.
- Prioritize and troubleshoot development and test region issues.
- Develop run-books that detail building, deploying, and troubleshooting processes.
- Promote and contribute to best practices.
- Plan and execute tasks within an agile environment.
- Production Support
- Monitor production regions and environments
- Provide first level support for application software issues in all environments.
- Prioritize and rapidly troubleshoot issues to ensure maximum uptime and optimal performance for customers in our production environment.
Migrate existing source control system to GIT.
Education: Bachelor of Science degree in Computer Science or equivalent job experience.
- Minimum 7 years of software related experience required (DevOps, Release Engineering or Java development preferred)
- Experience and deep commitment to the transformation to a DevOps culture focusing on continuous integration – full lifecycle of building, automated and performance testing, and automating deployment
- Experience with VM, Docker, container solutions, management tools and challenges.
- Experience with Ansible, Chef, Puppet or other Configuration Management tools
- Extensive experience with Linux, Unix, Windows
- Hands on experience with Python, shell scripting, Groovy, etc
- Experience with Jenkins, TeamCity or other Continuous Integration tools
- Deep knowledge of build tools like Ant and Maven
- Hands on experience with SQL, DB Release Management
- Usage of Jira, Rally, or other tracking tools
- Demonstrate strong problem analysis, problem resolution, and decision making and judgment skills.
- Demonstrate understanding of complex software architecture, and the ability to help enhance, support, and troubleshoot that architecture.
- Demonstrate strong collaboration skills, within function and across peer stakeholders.
- Demonstrate excellent and effective interpersonal and communication skills (written, verbal and listening), with ability to build positive working relationships with all levels of the organization.
- Ability to leverage technical know-how to find viable compromises amidst competing business needs.
- Demonstrate ability to plan and excel in a fast-paced and demanding environment.
- Solid understanding of agile methodology and Release Engineering. Be able to leverage what has worked and adapt it to fit new situations.
Other Knowledge, Skills, Abilities or Certifications:
- Agile Scrum Master experience.
- Able to plan and execute projects as part of a collaborative team.
Location: Waltham, Massachusetts