Staff DevOps Engineer - 12944
Remote, United States
The Staff DevOps Engineer will work as part of a highly collaborative team on developing and maintaining automated build and deployment systems. Recommend process improvements to ensure system scalability and reliability. Assist in developing and implementing various tools and scripts and perform deployments and patches per the needs of the business. You will research, test new technologies, collaborate with other teams throughout Engineering and other organizations within BlackLine, defining and implementing new solutions and drive innovation.
- Ensure high availability of a SaaS platform that is built primarily around Microsoft .NET tools and technologies.
- Work with development teams on transitioning to a Continuous Delivery process with automated build, test, and deployment.
- Create and maintain software build and deployment pipelines using Jenkins and PowerShell.
- Automate server provisioning using Chef and Ruby.
- Perform software releases to production and other client facing environments.
- Debug and resolve application and middleware issues.
- Collaborate with development and other technology teams on requirements definition, capacity planning, and process refinement.
- Use data from a variety of performance and health management tools to deliver a continuous assessment of application performance and reliability.
- Adhere to existing operational processes and maintain operational documentation.
- Monitor industry trends. Research, design, develop and implement solutions for fault tolerance, performance and capacity management.
- Participate in architecture design of complex SaaS solution with developers.
- Contribute knowledge, skills, and personal qualities to a dedicated team of top engineers solving real-life problems in a bleeding-edge, high-performance, and high-traffic environment.
- BS or MS in Computer Science (or equivalent diploma and/or certifications) with 5-7 years related experience.
- Familiarity with Continuous Integration and Delivery including experience with tools such as Jenkins or Team City.
- Hands-on experience with a Distributed Version Control System such as Git or Mercurial.
- Advanced knowledge of at least of the following programming languages: C#, Visual Basic, PowerShell, Java.
- Expertise with common Microsoft .NET build, package and deployment tools and such as MSBuild, MSDeploy and NuGet.
- Experience scripting provisioning of servers, applications, and/or infrastructure in a production environment at scale.
- Experience with Containers and Orchestration tools for On premise and cloud Ex- Docker, Kubernetes, OpenShift etc.
- Knowledge of software development best practices and SDLC.
- Experience deploying high availability systems and software.
- Experience with troubleshooting distributed web applications in a production environment.
- Advanced level knowledge of IIS and Windows Server.
- Advanced level knowledge of SQL and NoSQL.
- Experience with a subset of: RabbitMQ, Memcached,Redis, Microservices, Consul, Vagrant
- Experience with infrastructure as a code and platform as a service.
- Experience with configuration management tools Ex Chef, Ansible, Puppet.