Position Summary
This position leverages people, processes, and technology to stimulate collaboration and innovation across the entire software development, operations, and release process. Shall advocate f or cross functional team engagement, automation, and continuous improvement, while leading and promoting by example. The DevOps Engineer will design, build, and maintain stable and efficient infrastructure environments required to deploy Q-Free software in both internal and external networks. This includes verifying the readiness of core technology stacks necessary to implement and monitor a system. The candidate will be responsible f or deployment of the Q-Free software once all system readiness tasks are complete. The DevOps Engineer works independently to investigate technologies, recommend and implement solutions, collaborates and contributes to complex tasks within the job f unction. May assume a team lead role f or a project team. Support includes both internal systems (Q-Free offices) and external (client) systems at Q-Free facilities or located within the client’s facilities.
Responsibilities
- Rely on experience and judgment to independently plan and accomplish goals
- Facilitate communications that reach across Sales, Engineering, Configuration Management, Support and Project Management teams
- Utilize a consistent DevOps approach to improve all phases of the process and ensure end -to-end quality across functions
- Design and build efficient and stable infrastructure to optimize service delivery to meet project uptime requirements in both cloud and client hosted environments throughout the software development lifecycle
- Identify and implement automated infrastructure capabilities like backups, security tools, and monitoring
- Monitor, troubleshoot, maintain, and continuously improve processes for building, packaging, and deploying software
- Baseline recording, identifying product thresholds and track trend development for performance metrics on all products (in regard to deployments and configuration)
- Identify and implement new tools to improve deployment infrastructure and monitoring capabilities
- Virtual machine management, set up, and configuration utilizing VMware, Hyper-V,
- Construct, manage, and implement configuration management (CM) automated install processes for all products and customers
- Installation of proprietary, public, and third- party software on development, test, and/or production This includes customer environments. Responsible for maintaining detailed installation instructions for each installation. Ability to troubleshoot installation issues.
- Kubernetes management, including installing clusters on bare metal/virtual servers, managing cloud clusters, configuring, deploying, and updating pods and containers and managing nodes and storage
- Maintain Software Release Record for each customer’s site
- Perform database import/exports, execute scripts; ideally be able to create and run complex SQL queries
- Conduct field device testing, software release rollout, OS patching, Application Configuration, COTS tool upgrades, etc.
- Routinely work with customer to coordinate and conduct software release rollout to production sites for multiple Q-Free products
- Work with Sales, Engineering, and Operations to design, document, and propose architecture solutions for future and existing customers.
- 24/7 on-call support is required to support after hours infrastructure issues in order to meet project service level agreements and performance requirements
NOTE: Additional duties may be assigned as the position evolves and technologies change
Experience
- Minimum of 7 years of experience designing, deploying, and maintaining on-premises and hosted solutions
- 5 years of experience as a DevOps Engineer in a scalable production environment
- 5 years of expertise with DevOps processes and tools supporting Agile application development teams, leading to continuous integration, test, and deployment methods
- 3 years of experience with Kubernetes and management platforms like Rancher
- 3 years of experience with Git version control and hosted platforms such as GitHub, Bitbucket
- 3 years of experience with CI/CD software such as CircleCi, Jenkins
- 3 years of experience with scripting languages like Python, Perl, Bash, PowerShell, PHP
- 3 years of experience with programming languages like Java, Go, JavaScript, C++
- with common API endpoints such as Rest, GraphQL, Soap
- Strong knowledge maintaining and updating Kubernetes applications using tools such as Helm
- Experience writing SQL and working with databases such as PostgreSQL, Oracle, MongoDB
- Familiar with security tools such as Rapid7 InsightVM Vulnerability Management, Trend Micro
- Familiar with ELK, Prometheus, CloudWatch, and similar platforms
- Knowledge of reporting tools such as Jasper Reports is a plus
- Experience automating performance testing and using performance testing tools is a plus
- Experienced with network infrastructure, database, cloud and data center operations, and security protocols
Competencies
- Excellent oral and written communication skills
- Customer-oriented, positive, can-do attitude, flexible and self-motivated
- Proven attention to detail
- Ability to self-manage assigned tasks and projects
- Excellent troubleshooting skills
- Strong knowledge of Linux and/or Windows OS administration
- Understands AWS, Azure, and other cloud services
- Ability to utilize scripting for automated releases, testing, and deployments
- Solid understanding of and experience with provisioning and managing infrastructure as well as applications in cloud environments, preferably in AWS and Azure.
- Candidate must demonstrate experience managing multi-node clusters and explain how to perform common maintenance task, such as changing the IP address or the host nodes or changing the storage locations for pods and services.
- Working knowledge of IP networking, VPNs, DNS, load balancing and firewalling
Education Requirements
- Bachelor’s degree in Computer Science or related field or equivalent work experience in lieu of