Senior DevOps Engineer, Data Fabric Team
athenahealth is transforming healthcare by creating easy to use, ultra-powerful, cloud based tools which allow medical professionals to focus on what they do best – treat patients. Our product and services impact the practice of medicine for half of all physicians in the US. Our network covers over 46 million patient lives and 160 million visits per year.
We are a technology-enabled services company, and as we progress towards our vision of being the health information backbone for the entire nation, we need to ensure that athena’s products are built on a truly elastic and performant platform. We are embarking on an initiative to deliver a new set of core services that will allow our own product teams, as well as external 3rd parties, to manage extremely large and diverse data sets and operate at the truly massive scale we need to in order to service the health information needs of the country. It will enable the building and offering of solutions to the market to improve the state of health care. Come join our team that is creating athenahealth's next generation modern Healthcare Cloud Platform and help make this aspiration a reality.
You will be part of a team that will create and support the polyglot Data Fabric underlying our next generation platform. You will contribute to the design/development/support and operation of a wide variety of state of the art data store technologies such as Cassandra, Elastic Search, Postgres, Redis, Kafka and neo4j.
Responsibilities may include, but are not limited to:
- Ability to critique technical documentation as needed
- Contribute to the development and support effort required to expand our data store product offering to new storage engines.
- Automate and streamline the operation of our pre-production and production data stores
- Develop procedures and software components that support deployment, monitoring and ongoing operation of our clients data stores.
- Troubleshoot and resolve issues in our dev, test and production environments
- Establish plans, procedures and practices to support a growing client base across a multitude of data store types
- Monitor data store growth and usage patterns to predict and prevent production issues
- Proactively identify and propose new, alternative technologies in order to create scalable implementations and achieve results.
- Estimate the size of development tasks in story points; challenge others during estimation
- Provide high level T-shirt sizing for the work required to build smaller software components and services
- Understand and follow coding conventions, architectures, and best practices; hold other members of the team accountable for doing so
- Write, debug code needed to create, deploy and operationalize and support our clients data storage engines.
- Participate in team member interview process as needed and influence final hiring decisions.
- Scale systems to meet business demand
- Deploy systems to meet availability targets (HA/DR)
- Adhere to DOD (story definition of done) as part of the sprint, including unit tests, functional testing, code reviews, no regressions, bug fixes, documentation and adhere to best coding practices
- Perform peer code and design reviews in order to ensure quality standards.
Contributions to the Team
- Act as the subject matter expert of one or more data storage engines such as Postgres, Elastic Search, Cassandra and Neo4j
- Participate on agile teams following practices outlined by team
- Take ownership of what the team builds after the release; consider stability, scalability and performance as success criteria
- Contribute to agile ceremonies to improve team performance
- Participate and contribute to scrum meetings i.e. daily stand-up, sprint planning, readouts and retrospectives
- Drive self-organization; help determine how the team functions in collaboration with your peers
Cross functional Coordination and Communication
- Work collaboratively across the Technology and Product organizations to ensure alignment towards business goals
- Collaborate with members of product and UX teams to design solutions
- Builds strong relationships with cross-functional team members and business stakeholders
- Share business and technical learnings with the broader engineering and product organization, while adapting approach for different audiences
Education, Experience, & Skills Desired:
- 5+ years of experience in an engineering and/or IT operations role
- Ability to code and script
- Experience with systems and IT operations
- Experience in an Agile environment preferred
- Bachelor’s Degree or equivalent
- Software engineering skills and/or IT operations skills.
- Background in computer science or equivalent preferred
- Experience configuring and operating 1 or more RDBMS or NoSQL database (eg.Postgres, mySql, Cassandra, Elastic Search, Redis, Neo4J, MongoDB, etc…)
- Knowledge of Unix/Linux, Big Data, SQL, NOSQL, and various other technologies
- Experience optimizing, scaling or operationalizing Kafka or Spark
- Experience with containers such as Docker on AWS or Azure
Behaviors & Abilities Required:
- Ability to learn and adapt in a fast paced environment, while producing quality code
- Ability to work collaboratively on a cross-functional team with a wide range of experience levels
- Ability to prioritize both individual time and the time of the team
- Strong mentoring and coaching skills that encourage growth for more junior members
- Ability to write code that is technically sound, performant, scalable, and readable
- Ability to collaborate with business owners to understand and refine business requirements
- Ability and willingness to demonstrate ownership of an area of athena’s technology
- Passion for data and data storage technologies