Position: Senior DevOps Engineer
Company: Ascendix Technologies
Experience required: 3y
Category: DevOps
English level: upper
Published: 2023-09-01T00:00:00+03:00

Our client is a leading private airport shuttle service provider with a passenger turnover of two million/year in main Western European countries with headquarters in Luxembourg. Product is related to people transportation domain. It will help users to reach destinations they want, including safe journeys for children and seniors. Except the new features development the Technical Roadmap is focused on re-decomposition of existing services and code base, implementing loosely-coupled services approach, build independent pipelines for backend services, follow the best event-driven architecture practices (long term goal).

Project Team: 
There are 3 teams in the project: 
Functional Team – that focuses on the functional deliverables 
2 BE Devs, 2 Web Devs, 1 Mobile Dev, 3 QAs, 2 BAs, PM 
Technical Roadmap Team – focuses on technical improvements of the existing code 
SA, BE Dev, Web Dev, Mobile Dev, QA, DevOps 
24/7 Team – Support team 
DevOps 
Technology stack: Java17, Spring Boot, Maven, Git, Azure DevOps (Pipelines, Repos), GitHub, MongoDB, Swagger, Linux, Docker, AKS, Helm, ELK Stack, Azure Web Services, Drupal, MySQL, Redis, Prometheus, Terraform, etc.

**Requirements:**
- Proficiency in tools like Terraform, CloudFormation, or Ansible to automate the provisioning and management of infrastructure resources. 
- Experience with Docker for containerization and Kubernetes for container orchestration. Knowledge of managing containerized applications, scaling, and ensuring high availability. 
- Strong understanding of CI/CD principles and hands-on experience with tools such as Azure DevOps Pipelines, Jenkins, GitLab CI/CD, Travis CI, or CircleCI for automating software delivery pipelines. 
- Proficiency in at least one major cloud platform like Amazon Web Services (AWS), Microsoft Azure, or Google Cloud Platform (GCP). Knowledge of provisioning, managing, and optimizing cloud resources. 
- Familiarity with monitoring tools like Prometheus, Grafana, Alertmanager and log management tools such as ELK stack (Elasticsearch, Logstash, Kibana). 
- Understanding of networking concepts, security best practices, and experience in configuring firewalls, VPNs, and security groups. Knowledge of tools like HashiCorp Vault for secrets management. 
- Strong experience with version control systems, particularly Git, including branching strategies, merging, and resolving conflicts. 
- Ability to set up and configure monitoring solutions to track the health and performance of systems, applications, and services. 
- Familiarity with database technologies like MySQL, PostgreSQL, or NoSQL databases. Experience in database deployment, maintenance, and optimization. 
- Strong teamwork and communication skills, as DevOps often involves collaboration with development and operations teams to achieve seamless integration and deployment. 
- Proficiency in scripting languages such as Bash, Python, to automate repetitive tasks and build custom tools. 
- Experience with version control systems like Git, including branching strategies, pull requests, and code reviews. 
- Ability to diagnose and resolve complex technical issues quickly and efficiently. 
- Proven track record of implementing DevOps best practices, fostering a culture of automation, continuous improvement, and collaboration. 
- Understanding of microservices architecture and its challenges, along with strategies for managing microservices in a distributed environment. 
- Ability to analyze and optimize system performance, including resource utilization, response times, and scalability. 
- Knowledge of strategies and techniques for ensuring system resilience, disaster recovery, and high availability. 
- Familiarity with Agile and DevOps methodologies, as well as experience working in Agile development teams. 
- Strong problem-solving abilities, excellent communication skills, and the ability to mentor and lead junior team members. 

**Additional requirements (would be a plus)  **
- Holding certifications like AWS Certified DevOps Engineer, Google Professional DevOps Engineer, or Microsoft Certified: Azure DevOps Engineer can demonstrate a deep understanding of cloud services and DevOps practices. 
- Familiarity with serverless computing platforms like AWS Lambda, Azure Functions, or Google Cloud Functions, and the ability to design and implement serverless applications. 
- Experience in deploying and managing machine learning models in production environments, using tools like TensorFlow Serving or Kubeflow. 
- Knowledge of working with multiple cloud providers, allowing the company to take advantage of best-of-breed services from different providers. 
- Expertise in securing infrastructure, implementing best practices for access management, encryption, vulnerability scanning, and compliance. 
- Experience with orchestrating complex CI/CD pipelines involving multiple services and environments. 
- Familiarity with container security practices, image scanning, and implementing security policies for containerized applications. 
- Proficiency in setting up automated testing pipelines, including unit tests, integration tests, and end-to-end tests. 
- Demonstrated ability to lead and mentor team members, drive technical discussions, and contribute to architectural decisions.

**Responsibilities: **
- Collaborate with development and operations teams to architect and design scalable, reliable, and efficient infrastructure solutions using DevOps best practices.
- Lead the design and implementation of robust CI/CD pipelines, automating the build, test, and deployment processes to ensure rapid and reliable software releases.
- Drive the adoption of containerization technologies like Docker and container orchestration platforms like Kubernetes. Manage containerized applications and ensure high availability.
- Set up monitoring and alerting systems to proactively identify performance bottlenecks, system failures, and security vulnerabilities. 
- Implement strategies for scaling and self-healing systems.
- Implement security best practices, manage access controls, and ensure compliance with industry standards. Perform security assessments and vulnerability scans on infrastructure components.
- Continuously analyze system performance, resource utilization, and costs. Optimize infrastructure components for efficiency, scalability, and cost-effectiveness.
- Lead incident response and resolution efforts, troubleshooting complex issues and coordinating with cross-functional teams to minimize downtime and service disruptions.
- Coordinate and manage software releases, ensuring smooth transitions between development, testing, and production environments while minimizing risks.
- Manage database deployments, backups, and migrations. Optimize database performance and maintain data integrity.
- Foster collaboration between development and operations teams, enabling a culture of knowledge sharing, code reviews, and continuous improvement.
- Provide technical mentorship and guidance to junior team members. Collaborate with other technical leaders to define best practices and set technical direction.
- Stay up-to-date with industry trends, emerging technologies, and best practices. Evaluate new tools and technologies that could improve the DevOps workflow.
- Maintain comprehensive documentation for infrastructure, processes, and procedures. Ensure that documentation is up-to-date and accessible to the team.
- Estimate future infrastructure needs based on application growth and usage patterns. Plan and execute capacity scaling strategies to meet demand.
- Develop and test disaster recovery plans to ensure data integrity and system availability in case of failures.
- Participate in code reviews for infrastructure-as-code scripts, CI/CD pipeline configurations, and other automation-related code.
- Investigate and resolve complex technical issues, providing root cause analysis and implementing preventive measures.
- Work within an Agile development framework, participating in sprint planning, backlog grooming, and other Agile activities.