Job Purpose:
The ServiceNow Automation Architect is tasked with the design, development, and administration of continuous integration and deployment solutions for applications and software across the entirety of the Assurant enterprise technology stack. They spearhead the creation of new technology infrastructures and maintain software configuration, automation tools, and develop automation processes and standards. This is a fully remote position.
Responsibilities:
Kubernetes
Build Software
Storage (Computing)
Ansible
Mesos
The ServiceNow Automation Architect is tasked with the design, development, and administration of continuous integration and deployment solutions for applications and software across the entirety of the Assurant enterprise technology stack. They spearhead the creation of new technology infrastructures and maintain software configuration, automation tools, and develop automation processes and standards. This is a fully remote position.
Responsibilities:
- Training: The Principal DevOps Engineer conducts training for junior DevOps Engineers and other engineering teams on how to build software defined/driven processes in code. The Principal DevOps Engineer plays an operational role by overseeing issues in systems and leveraging those issues as vehicles for teaching other members of the staff.
- Strategy: The Principal DevOps Engineer enables automation of configuration management for all development, quality assurance, user acceptance, pre-production, and production services as well as the automation of continuous integration and continuous delivery for IaC services. The Engineer is also tasked with the continual improvement of software deployment strategies that allow DevOps engineers to successfully deploy software and services in any environment. They are responsible for the overseeing configuration management tools, code, and modules for the purpose of streamlining implementation and supportability. The role is also charged with commissioning pilots, and selection recommendation as it relates to custom software, hybrid solutions, and out of the box vendor packages.
- Design and Development: The Principal DevOps Engineer is charged with overseeing designing, building, and optimizing comprehensive automation systems that operate across all lines of business at Assurant. They also design scaling strategies and develop automation scripts and solutions for the purpose of streamlining, implementing, and testing software-based technology services. The Principal DevOps Engineer additionally overseeing self-service solutions for the engineering departments to deliver software-based technology services with great speed and quality. They are also responsible for the architecture and technical leadership of the entire DevOps infrastructure.
- Collaboration and Support: The role of the Principal DevOps Engineer is a collaborative role where they assist more junior members of various teams in the usage of technologies for software development, software testing, service provisioning, and service management. The Principal DevOps Engineer also coaches and sets the directions of the engineering and development department personnel in the workings of reusable tools and patterns, for example, reusable code and CI/CD pipeline tasks. They also support engineering teams in the implementation and lifecycle of infrastructure solutions and operational documentation to meet the highest levels of quality and standards.
- Knowledge: The Principal DevOps Engineer is further tasked with keeping up with and implementing industry best practices and trends on behalf of the DevOps C4E. They conduct research, tests, and implements new metrics collection systems that can be reused and applied to software-based technology services and application development projects. The role is seen as an evangelist of emerging and transformational technologies and ways of working.
- Education: The Principal DevOps Software Engineer must have a bachelor’s degree in computer science or any other relevant STEM field. An equivalent in working experience is also acceptable for this position in lieu of formal education.
- Experience: A candidate for this position must have at least 10 years of working experience in a DevOps capacity, preferably as a DevOps Engineer; however, this requirement can be met by combinations of experience in DevOps engineering, software engineering, and software defined infrastructure automation/configuration management. The candidate must also have experience automating the management of large-scale infrastructure. Significant familiarity with past and current policy and configuration management software is a requirement. The candidate must have experience in systems automation, orchestration, deployment, and implementation across multiple layers of the stack. Ideal candidates will have several years of experience using Windows and Linux and must have experience in one or the other as a basic requirement. Experience configuring and automating monitoring tool systems and responses is a must. The candidate must similarly demonstrate experience in software development and experience working with tools and languages such as C#/Java, YAML, Python, PowerShell, JavaScript, JSNode, SQL and MongoDB. A suitable candidate will further demonstrate experience in horizontally scaled distributed systems, for example, ELK, Container Management and Orchestration platforms.
- Technology/Software: A candidate for this position must be technologically adept and have demonstrated enterprise level computer infrastructure and software development skills. The candidate must have a comprehensive understanding of AWS and Azure Cloud Platforms. The candidate must also have worked with monitoring tools such as Dynatrace, NewRelic, CloudWatch, Azure Monitor, and Nimsoft
- Master’s degree in Computer Science, Information Technology, or any other relevant STEM field, or equivalent experience
- Minimum of 10 years of experience in operations support and/or application development.
- IaaS and PaaS technologies
- Knowledge of infrastructure security, platform, authentication and networking requirements
- Understanding of Agile processes
- Familiarity with Microsoft Azure, AWS and on-premise and cloud infrastructure platforms
- Support, administration and automation of application containerization and Microservices
- Experience with software configuration management and/or release automation tools (Ansible,Terraform)
- Experience delivering business-centric, integrated technology solutions at an international scale
- Deep understanding of technology trends and a broad knowledge of technology products and vendors
- Exposure to multiple, diverse technical configurations, technologies, and processing environments.
- Exceptional written, verbal and presentation skills in order to communicate to peers, management, and business unit staff
- Knowledge of IT systems technology developments and trends
- Familiarity with leveraging the Microsoft tool chain for DevOps including but not limited to:
- Azure DevOps
- Octopus and/or Microsoft Release Manager
- Azure and related platforms and technologies (Cosmos DB, Application Insights, SQL PaaS, etc.)
- PowerShell and PowerShell DSC
- Microsoft Service Fabric
- Additional DevOps Experience a plus on any of the following disciplines:
- CI/CD toolchains, Maven, Jenkins, etc.
- Configuration management and orchestration tools, such as Ansible, Chef
- Container orchestration tools, such as Kubernetes, Mesos, or Swarm
- Use of the Atlassian stack (Jira, etc.)
- Broad and deep understanding of cloud and-on premise infrastructure including operating systems, networking, security and authentication, storage and monitoring
- Ability to script and automate processes using PowerShell, Python and other popular scripting languages
- Experience with development and the software development life cycle
- Experience with common system integration and services frameworks such as SOA
- Experience in mentoring and educating fellow technology staff members
- Ability to manage reporting and metrics for a small set of work efforts
- Budgets, Contracts, and Vendor Management
- Communication Skills: The Principal DevOps Engineer will need to have exceptional communication skills that allow him/her to effectively execute their duties across all levels of the organizational structures. Effective communication is expected when supervising more junior DevOps team members, socializing ideas, designs, and concepts with peers, and presenting summarized information to higher level management and leadership.
- Interpersonal Skills: A candidate for this position must be a result oriented individual, be helpful in nature, be self-motivated, be proactive going beyond the call of duty, be a creative and strategic thinker, be highly analytical, work comfortably in a constantly evolving environment, work comfortably in a collaborative environment, have an ability to multi-task and meet tight deadlines, and have an ability to remain calm in the face of uncertainty and stress,
- Collaborative People Skills: The Principal DevOps Engineer must be a people person who is able to form strong and meaningful relationships with others. They must be trustworthy, likable, and relatable individuals who inspire confidence at all levels of the organization regarding their insights, judgments, and directives
Recommended Skills
TerraformKubernetes
Build Software
Storage (Computing)
Ansible
Mesos