Go behind the scenes in Spok's Eden Prairie, MN office by watching this video, Transforming an Industry. You'll learn about the solutions Spok develops, and why collaborating to build them means so much to our employees. You'll also get a feel for our company culture of collaboration, and the underlying beliefs, values, and people that make Spok a great place to work.
The Development Operations (DevOps) Engineer works as a key member of the software technology development team supporting the entire development lifecycle. In this role, the DevOps Engineer manages the shared development infrastructure, oversees the software product build process, streamlines product release, and automates the build, deployment, validation and delivery frameworks. The individual in this role will have experience with software development lifecycles, modern build tools, cloud environment management, and the concepts of Continuous Integration and Continuous Delivery.
Strong organization, communication, and collaboration are essential to the success of the DevOps practice. Must be able to understand the needs of all development constituents and influence adoption of evolving frameworks, practices, and processes.
Essential Duties and Responsibilities:
- Support the build, deployment, and continuous validation of Spok's software products
- Standardize, automate and document setup of development, QA and production environments using Infrastructure-as-Code (IaC)
- Own and drive improvements to our build and automation scripts, tools, and processes
- Help define best practices for source control, continuous integration, automated testing and release management
- Collaborate with peers on work estimation/planning and implementation of new versions/features of tools
- Build tools for internal use to support modern software engineering best practices
- Bring new automation technologies to improve the velocity and quality of our engineering efforts
- Guide software development teams, help them design scalable systems
- Maintain and improve the build, test and release frameworks
- Execute software releases to QA and development environments
- Create new tools and scripts as needed to support our business
- Provide leadership and practical knowledge of cloud computing environments like AWS, Google Cloud Platform, or Microsoft Azure
- Improves and champions our build and deployment process
- Consults on overall production system architecture
- Research and recommend technology frameworks for source management, software build, infrastructure management, and continuous integration
- Stay current with new technology trends.
- Other duties may be assigned.
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Education and/or Experience:
- Bachelor's degree from four-year college or university and 4 years' experience or Master's Degree in Computer Science and 2 years' experience; or comparable experience and/or training; or equivalent combination of education and experience. BS in Computer Science preferred.
Required Skills and Experience:
- Strong experience and knowledge of software development, DevOps or Site Reliability Engineering
- Strong experience with Linux and Unix platforms
- Strong experience managing in cloud environments (AWS, Azure, or similar)
- Experience leading teams; or equivalent combination of education and experience.
- Experience with a CI systems, such as Jenkins
- Experience with Microsoft Windows platforms
- Experience in orchestration/infrastructure as code (Ansible, Terraform, CloudFormation)
- Experience with version control systems (i.e. Git)
- Solid understanding of networking, network security, load balancers, TCP/IP
- Working knowledge of security standards and best practices
- Demonstrated ability to coordinate cross-functional work toward task completion
- Excellent communication skills, both verbal and written
- Experience working on an Agile development team
- Experience working in a Healthcare/clinical environment
- Ability to identify, own, and solve problems independently or as part of a team