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 operational management of a wide variety of state of the art data store/processing technologies such as Cassandra, Elasticsearch, Postgres, Redis, Kafka, Neo4j, and others.
Responsibilities may include, but are not limited to:
- Automate and streamline the operation of our pre-production and production data stores
- Contribute to the development and support effort required to expand our data store product offering to new storage engines.
- Develop procedures and software components that support deployment, monitoring and ongoing operation of our client’s 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 client’s 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/processing engines such as Postgres, Elasticsearch, Cassandra, Redis, Kafka, Neo4j, etc…
- Participate on agile teams following practices outlined by team
- Take ownership of and support the product in production 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
- Use of Kafka, Spark a plus
- 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