DevOps Engineers are IT professionals who collaborate with software developers, system operations and other IT staff members to deploy and operate our systems and manage code releases. They cross and merge the barriers that exist between software development, testing and operations teams and keep existing networks in mind as they design, plan, test & monitor. DevOps Engineer will be responsible for continuous integration, deployment, monitoring and troubleshoot/resolve issues in our dev, test and productions environments. Responsibilities range from building resilient systems and creating repeatable processes to application performance monitoring and environment automation. The selected candidate will have strong communication skills, a dedication to working with teammates to create great solutions, and a willingness to participate in an afterhours on-call rotation.
What the Role Involves (Responsibilities)
- Understand the goals of DevOps, plan and implement changes in legacy and brown-field projects. Advise Developers, QA, Project Management and Client Services on DevOps best practices.
- Implement non-disruptive changes, where possible and on-board stakeholders with disruptive changes, where it is required.
- Implements self-service on all levels of company to make DevOps work invisible.
- Work alongside/Collaborate with project managers to facilitate planning processes & spring deliverables.
- Contributes to the development of estimates and operational requirements to enable accurate planning with realistic timelines.
- May interact with client partners and vendors in coordination with project managers to provide technical solutions that address user needs.
- Utilizes a systematic approach when gathering, analyzing and documenting client requirements, while also managing change processes as a result.
- Writes and communicates functional and technical requirements and specifications for project implementations.
- Creates and maintains automated systems for continuous integration and continuous delivery.
- Ensure our Elasticsearch clusters are healthy and functional, maintaining 99.9% availability.
- Provide support of ELKs self-service, indexing, searching, visualization, and alerting capabilities.
- Administer access controls, capacity planning, and performance tuning.
- Evaluates existing applications and platforms and provides recommendations for improving performance & reliability by conducting gap analysis, identifying feasible alternative solutions, and assisting in the scope of modifications.
- May perform automated load & stress tests and address any issues.
- May participate in the development of contingency plans including reliable backup and restore procedures, automatic failover, etc.
What You've Got (Qualifications & Skills)
- Bachelor's degree in Programming, Systems Engineering, Computer Science or other related field or equivalent work experience
- 2+ years of Elastic Stack (Elasticsearch, Logstash, Beats, Kibana, and X-pack) experience in production.
- 2+ Years’ experience Building, configuring, and managing cloud solutions in multi-tenant enterprise environments (public/private cloud).
- Linux, CentOS and/or Red Hat Enterprise Linux (RHEL) experience.
- Experience with Messaging Queues (Kafka, RabbitMQ).
- Experience with data ingest, Extract, Transform, and Load (ETL) techniques, preferably Logstash.
- Experience with multi-node clustering, architecture, development, implementation, and system health monitoring.
- Knowledge of Elasticsearch and Kafka Management.
- Knowledge of Kibana dashboard options.
- Efficient in Python, Shell, and bash.
- Good understanding of Ansible is a plus.
- Experience and excellent understanding of CI/CD pipeline (experience with TeamCity, Octopus Deploy is a plus.)
- Good understanding of networking and SOA
- Experience with application & infrastructure monitoring both on prem and in the cloud (e.g Azure Application Insights, New Relic, Splunk)
- Excellent communications skills with the ability to share insights and expectations with clients, stakeholders, and colleagues, both locally and remote
- Knowledge of an agile team environments and processes.
- Experience with troubleshooting and problem-solving production environments and issues.
- Ability to adapt to a changing and rapidly growing environment.
- Willingness to participate in an afterhours on-call rotation.
Who You Are (Ideal Competencies/Skills)
- Creative. You have a constant drive to make things better; you question the status quo and approach common challenges with creativity and constructive criticism. You have skills to clearly and convincingly share ideas in a way that adapts to your audience, regardless of function, level, or expertise.
- Pragmatic. You understand the following phrase, “Ship the right thing, frequently, with high quality, choose two”.
- Critical, big-picture thinker. You have a constant thirst for knowledge and the ability to credibly share it with others, whether internally or externally. You are analytical, evaluating logic-based details while always considering and problem-solving for the sake of the big picture.
- Self-starter. You are proactive, self-motivated, and able to push work, start initiatives, and provide ideas independently in a team environment.
- Team player. You can foster professional and personal respect from others and find success in a team setting. While highly collaborative, you have natural management skills and know how to grow and develop people.
- Adaptable. You are highly organized and flexible. You know how to manage expectations and can thrive in fast-paced, constantly changing environments and successfully adapt to a variety of tasks.
How We Work (Team & Culture)
- Collaborative. We work together and help each other do our best by building on our work across teams and offices. We don’t own individual ideas or seek credit.
- User-driven. We place our clients and our users’ needs above all else. If it matters to a user, it matters to us. We work for them and keep ourselves accountable to that.
- Hands-on. We don’t wait for problems to solve themselves. We enter the thick of it and get things done.
- Impact over ego. Our culture is about results, not ownership. Great ideas have seniority over titles and levels, and great thinkers outshine fancy pedigrees.
- Forward-looking. We look beyond our own world to constantly improve our business. We welcome outside speakers, tap into the latest tech, and make sure we’re future-proof in anticipation of what’s coming next.
- Caring & close knit. We know and care about our people. We know each other’s project strengths—but also about upcoming family trips and favorite after-work drinks.