Martins Eglitis, Developer in Riga, Latvia

Martins Eglitis

DevOps Engineer and Full-stack Developer

Location
Riga, Latvia
Toptal Member Since
January 17, 2022

With more than a decade of industry expertise, Martins is a DevOps engineer who specializes in optimizing and automating workflows for top-tier corporations, unicorn startups, and innovative projects. He's been a driving force behind the success of renowned companies like Accenture, Aptiv, and Printful, while also lending his talents to multiple smaller ventures. He is currently specializing in Kubernetes, Terraform, Linux, AWS/GCP, Docker, Grafana, Prometheus, GitLab/Github, Argo CD, and Go.

Martins is available for hire
Hire Martins

Portfolio

Woven Planet Holdings (via Toptal)
Kubernetes, DevOps, Amazon Web Services (AWS)...
Printful
Terraform, GitLab, Linux, Docker, Prometheus, Go, Git, GitLab CI/CD, Containers...
Dynatech
Kubernetes, Terraform, Argo CD, Git, Prometheus, Grafana, GitOps, Docker...

Location

Riga, Latvia

Availability

Part-time

Preferred Environment

Kubernetes, Linux, Containers, Prometheus, Amazon Web Services (AWS), Go, Git, GitLab CI/CD, Terraform, Argo CD

The most amazing...

...project I've worked on is building an automated and production-ready Kubernetes platform and helping teams migrate their application workloads to it.

Work Experience

2022 - 2022

Kubernetes Platform Engineer

Woven Planet Holdings (via Toptal)
  • Upgraded existing Terraform configuration with new functionality, e.g., new modules for Gitlab runners, new AWS IAM roles and policies for IRSA, etc.
  • Implemented new features in Gitlab CI/CD pipelines, e.g., KubePug for checking deprecated Kubernetes objects, Trivy for scanning container vulnerabilities, etc.
  • Integrated a cost-allocation monitoring tool into the internal Kubernetes dashboard so teams could see their monthly costs. The code was written in Go and Backstage.
Technologies: Kubernetes, DevOps, Amazon Web Services (AWS), Site Reliability Engineering (SRE), Google Cloud Platform (GCP), Docker, Containerization, Amazon EKS, Amazon DynamoDB, AWS Cloud Architecture, System Administration, Architecture, Amazon EC2, GitLab CI/CD, Containers, Git, Cloud, Infrastructure as Code (IaC), Helm, Shell Scripting
2021 - 2022

DevOps Engineer

Printful
  • Implemented on-demand staging environments based on Kubernetes for teams to work in sandboxed, scalable, and self-healing environments.
  • Programmed a tool in Go for both interactive and automated deployments to production servers using Viper and Cobra libraries.
  • Conducted research and implemented optimal Gitflow workflow strategy for modern continuous software development.
Technologies: Terraform, GitLab, Linux, Docker, Prometheus, Go, Git, GitLab CI/CD, Containers, Kubernetes, Loki, GitOps, Argo CD, Infrastructure as Code (IaC), Cloud, Grafana, DevOps, Amazon Web Services (AWS), MySQL/MariaDB, Containerization, Amazon EKS, Amazon DynamoDB, AWS Cloud Architecture, System Administration, Architecture, Amazon EC2, Amazon RDS, Site Reliability Engineering (SRE), Shell Scripting, Ansible
2021 - 2022

DevOps Engineer

Dynatech
  • Migrated multiple applications to Kubernetes, wrote Dockerfiles, GitLab CI/CD pipelines, ArgoCD applications, custom Helm charts, etc.
  • Developed a Go-based cost calculation tool for generating Kubernetes usage costs.
  • Planned and performed production Kubernetes cluster and component (CNI, KEDA autoscaler, etc.) upgrades with no downtime.
Technologies: Kubernetes, Terraform, Argo CD, Git, Prometheus, Grafana, GitOps, Docker, GitLab CI/CD, Go, Containers, Linux, Loki, GitLab, Infrastructure as Code (IaC), Cloud, DevOps, Amazon Web Services (AWS), MySQL/MariaDB, PostgreSQL, Ansible, Jenkins, Containerization, Amazon EKS, AWS Cloud Architecture, System Administration, Architecture, Amazon EC2, Amazon RDS, Helm, Site Reliability Engineering (SRE), Shell Scripting
2016 - 2018

Back-end Engineer

Terra Virtuala
  • Rewrote an unmaintained app from .NET to PHP and Bootstrap and wrote a data retrieval app in Node.js for communicating with iRobot robots over REST API.
  • Normalized the existing MySQL database, improved indexing and query execution times, and set up master-slave replication on air-gapped servers.
  • Automated on-prem server installation using shell scripts and later managed users, permissions, backups, etc., with Ansible.
Technologies: Linux, MySQL, PHP, Laravel, NGINX, Git, JavaScript, SCSS, Bootstrap, GitLab CI/CD, Symfony, Gulp, GitLab, Cloud, MySQL/MariaDB, System Administration, Shell Scripting, SQL
2014 - 2016

Lead Back-end Developer

Adevo
  • Built and delivered two web projects (Skorstensgaard.dk and Technicafootball.com) and a social media Android app for a mobile operator.
  • Managed a team of two PHP developers and introduced daily standups, retrospectives, sprint plannings, and monthly knowledge-sharing sessions.
  • Administered workstations and cloud services for a team of 20+ members.
Technologies: Linux, MySQL, PHP, Laravel, Symfony, Gulp, JavaScript, SCSS, Bootstrap, Git, NGINX, Cloud, MySQL/MariaDB, System Administration, Shell Scripting, SQL
2013 - 2014

Full-stack Developer

Gandrs
  • Improved the existing PHP framework based on CodeIgniter and Kohana. Worked on expanding the core functionality of the in-house CMS systems.
  • Delivered APIs for banking and other webshops and introduced digital payment systems.
  • Programmed a gallery to view products in vanilla JavaScript.
Technologies: PHP, Apache, CodeIgniter, MySQL, Linux, Git, JavaScript, NGINX, MySQL/MariaDB, System Administration, Shell Scripting, SQL

Experience

Automated Kubernetes Platform

https://dynatech.lv
Developers in the company needed multiple environments (development, testing, and production) to run their application workloads. The requirements for the environments were similar but had some differences in configuration, such as cluster policies, domains, and security credentials. However, building these environments from scratch every time was a tedious and error-prone activity.

To address the problem, I built a Kubernetes platform, which is automated, scalable, replicable, safe, and convenient. The platform is built with the best practices in mind: automation (GitLab CI/CD), GitOps (ArgoCD), IaC (Terraform), secrets management (SOPS and Sealed Secrets), user and access management (AWS IRSA, SSO with Authelia, and login with Pinniped), cluster policies (Kyverno), and monitoring (Grafana, Prometheus, and Loki).

Kubernetes Clusters from Scratch

I built Kubernetes clusters on bare virtual machines to optimize costs. The requirements were to find the most optimal cloud provider in terms of cost, availability, and region. Based on research, I concluded that Hetzner is the optimal cloud provider, even though it lacks some AWS features and scale. I built the clusters with kubeadm, Cilium as CNI, and CSI provided by Hetzner. I wrote the configuration in Terraform, using modules and some custom scripts and configuration for better automation. The Terraform was then run from a GitLab CI/CD pipeline.

Delivery Tool in Go

The company used a 1000+ line bash script to deploy code to production servers. This bash script had become unmaintainable and sometimes failed for no apparent reason, making the entire delivery process very flaky.

I rewrote the delivery tool in Go. It was based on Cobra and Viper because it had to support noninteractive use cases (from pipelines), interactive use cases, and conditional flags and arguments. I later improved the delivery tool and implemented a locking mechanism using AWS DynamoDB so that no deliveries could happen in parallel. I laid the groundwork for SlackOps so that the delivery tool could be triggered directly from Slack.

Sudoku Solver

https://gitlab.com/sitilge/sudoku-solver
Sudoku solver is a brute-force recursive solver for 9x9 Sudoku puzzles, which I built for an educational project.

It consists of three sub-projects:

1. The brute-force sudoku solver library was written in Go and tested with conventional and fuzzy tests.

2. The website allows the end user to easily enter the numbers in the grid, solve it, download the results, or use the endpoints exposed as API. I wrote the website in Go, and it contains a Dockerfile for building the image.

3. The third sub-project is related to operations and consists of GitLab CI/CD pipelines, Terraform configuration for AWS, and Kubernetes configuration.

Skills

Tools

Terraform, GitLab CI/CD, Git, GitLab, Amazon EKS, Helm, Grafana, NGINX, Gulp, Apache, Ansible, Jenkins, Logging

Paradigms

DevOps, Testing

Platforms

Kubernetes, Linux, Docker, Amazon Web Services (AWS), Amazon EC2, Google Cloud Platform (GCP)

Other

Containers, Prometheus, Cloud, Infrastructure as Code (IaC), Argo CD, GitOps, CI/CD Pipelines, Site Reliability Engineering (SRE), Containerization, AWS Cloud Architecture, System Administration, Architecture, Loki, Amazon RDS, Shell Scripting, Kyverno, Authelia, Web Security, Pipelines, Networking, APIs, Orchestration, Scheduling

Languages

Go, PHP, SQL, JavaScript, SCSS, Bash, Python

Storage

Amazon DynamoDB, MySQL/MariaDB, MySQL, PostgreSQL

Frameworks

Laravel, Symfony, Bootstrap, CodeIgniter

Libraries/APIs

Slack API

Education

2020 - 2021

Master's Degree in Computer Science

EPFL - Lausanne, Switzerland

2019 - 2020

Master's Degree in Computer Science

Chalmers University of Technology - Gothenburg, Sweden

2008 - 2012

Bachelor's Degree in Informatics and Applied Mathematics

University of Latvia - Riga, Latvia

Certifications

DECEMBER 2022 - DECEMBER 2024

Certified Kubernetes Administrator

The Linux Foundation

DECEMBER 2021 - DECEMBER 2023

Certified Kubernetes Application Developer

Linux Foundation

JUNE 2021 - JUNE 2024

Certified Terraform Associate

HashiCorp

APRIL 2021 - APRIL 2024

AWS Certified Cloud Practitioner

Amazon Web Services