Q-Free is a technology company seeking a DevOps Engineer to enhance collaboration and innovation in their software development and operations processes. The role involves designing, building, and maintaining infrastructure environments for deploying software, as well as advocating for automation and continuous improvement while leading project teams.
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
Requirements:
- 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++
- 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
- 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
- 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