Senior DevOps Engineer
Position Summary
As a Senior DevOps Engineer, you will be working collaboratively with our high-energy Agile software engineering teams to streamline deployment and operation of our systems. This position is responsible for delivering a scalable, performant and reliable application infrastructure at an enterprise level. This position focuses on automation, efficiency, and continuous delivery initiatives.
Job Functions, Essential Duties and Responsibilities
The important ways to spend time in this job are:
- Participate in design discussions, looking for opportunities to apply DevOps practices and philosophies.
- As a scrum team member, learn and implement DevOps concepts such as Continuous Integration and Deployment (CI/CD), Infrastructure as Code, Cloud Deployment, Automation, Configuration Management and much more.
- Continuously collaborate with team(s) to evaluate monitoring and performance of the environment.
- Identify opportunities to automate software builds and deployments and help streamline the development process.
- As a member of DevOps practice, assist in research of new tools/technology solutions/processes to help evolve our environment and software delivery.
- Provide production support for applications and infrastructure during business hours and in an on call rotation.
- Work directly with Principal DevOps Engineer/teams across projects, supporting them by problem-solving and delivering solutions for infrastructure needs.
- Adhere to a commitment of protecting and securing all client data by ensuring against unauthorized access and/or improper transmission of information that could result in harm to a client
Technical Skills/ Experience required to do this job well:
- At least 5 years of hands-on experience working as a DevOps or related Development/Infrastructure field.
- Bachelor degree in Computer Science or related discipline or equivalent work experience.
- Experience with Continuous Integration/Continuous Delivery in Windows/Linux environments.
- Experience automating with scripting languages such as PowerShell, Bash, Python or any other mainstream scripting languages.
- Strong experience with the Microsoft technology stack.
- Hands-on experience with Containerization, Docker & Kubernetes is required.
- Good understanding of Micro-services architecture and standard methodologies with an eye towards scale, automation, security, resiliency, high availability and disaster recovery.
- Good understanding of networking, load balancing, caching, configuration and certificate management.
- Must be a team player who understands the importance of teamwork, collaboration, and open communication, including a willingness to occasionally work in a pair-programming environment.
- Must possess strong analytical, troubleshooting and technical documentation skills.
- Experience with distributed systems or a large enterprise background.
Nice to have Technical Skills:
- Experience supporting Microsoft technologies (IIS, Team Foundation Server (TFS, VSTS), NuGet, Octopus Deploy and TeamCity is preferred).
- Experience with .Net Core/Framework, ASP.NET and MVC and/or Java.
- Experience with Windows Communication Foundation (WCF).
- Experience with JavaScript, jQuery, and JS frameworks.
- Experience with Configuration Management and Infrastructure as Code (Puppet, Ansible, Chef, Terraform, or similar).