Denis Trofimov

Denis Trofimov

Senior Software Developer, Team Lead

Looking for job opportunities

Biography

  • I am a Go/Python/C++/C software engineer and working in software development since 2010.
  • For the last 3 years I did Platform Engineering, the development of the Internal Developer Portal (IDP), and making organizations shift left on the DevOps paradigm.
  • In the past I’ve designed and developed standalone and client-server applications, with databases like Oracle DB, PostgreSQL, and MySQL.
  • Created applications serving CRM, web automated order processing, and simulation of the technological operation of railroad rolling stock.
Interests
  • Software Development
  • Platform Engineering
  • Cloud Computing
Education
  • MEng in Applied Mechanics, 2002

    Moscow State University after M. V. Lomonosov

  • BSs in Applied Mechanics, 2000

    Moscow State University after M. V. Lomonosov

Open for hire and new opportunities

Download CV Download CV

Skills

Golang

since 2018

kubernetes_logo_icon_168359
Kubernetes

since 2018

python_logo_icon_168886
Python

since 2013

file_type_terraform_icon_130125
Terraform

since 2020

file_type_helm_icon_130546
Helm

since 2019

docker_official_logo_icon_169250
Docker

since 2018

github-logo_icon-icons.com_73546
GitHub

since 2013

mongodb_original_wordmark_logo_icon_146425
Atlas MongoDB

since 2019

google_cloud_logo_icon_159333
Google Cloud

since 2017

amazon_aws_logo_icon_145507
Amazon AWS

since 2020

microsoft_azure_logo_icon_170956
Microsoft Azure

since 2020

C language

since 2010

file_type_cpp_icon_130670
C++ language

since 2010

Experience

 
 
 
 
 
Lead Software Developer (Platform Team Lead SWE)
Jan 2021 – Jun 2024 London, UK

Achievements

  • I designed and developed a custom IDP solution for the company, which includes all Huma products such as patient monitoring, pre-trained AI models, and any docker container applications. This IDP allows for 0-day operations as well as some day-2 operations, such as data backup and restore.
  • Automated pull request feature for the back-end development team, allowing them to preview back-end APIs in temporary cloud environments. This effectively reduces the time it takes to deploy from eight hours to fifteen minutes!
  • To automate DevOps tasks related to managing cloud resources, I have created Kubernetes operators that provide instant access to AWS S3, Google Cloud Storage, and Atlas MongoDB PostgreSQL and Redis cache.
  • Furthermore, I automated the CI/CD (Continuous Integration and Continuous Deployment) process using Argo CD and Grafana Cloud, among other tools. This increases both speed and reliability.
  • For two years, I led an internal platform team consisting of two senior engineers.

Technology

  • Golang, Kubernetes API, Typiscript, Vue.js, Operator SDK Go, MongoDB, Docker, GitHub CI, PostgreSQL, Redis
  • Jira, Confluence, GitHub, VSCode, Hugo
  • GCP GKE, AWS EKS, Azure AKS, Terraform, Helm, ArgoCD, Helmfile, Grafana Cloud, Atlas Cloud, KubeDB
 
 
 
 
 
Chief Technical Officer
Nov 2019 – Jun 2020 Moscow, Russia

Sitt.me is a community-based babysitting service that has a mobile platform. We had a team of professionals, including a project manager, a designer, a quality assurance expert, and developers: backend, frontend, and mobile.

Achievements

  • I’ve designed and implemented some cool features like in-app notifications and video calls.
  • I helped deploy 24 services in a private Kubernetes cluster for production and staging environments.
  • I’ve automated the CI/CD process to allow the team to test and deploy faster.
  • During my time here, I detected and solved some issues with our services.
  • Additionally, I mentored both back-end and front-end developers.

Technology

  • Golang, Bash, Ruby, ReactJS, SQL; PostgreSQL DB, Redis, Maria, RabbitMQ, Firebase; Jira, Confluence, GitLab
  • Engineering: Kubernetes, Docker, GitLab CI, ELK, Helm 
 
 
 
 
 
Senior Software Developer
Nov 2018 – May 2019 Moscow, Russia

Achievements

  • I built and implemented a voice assistant CMS with Flask and PostgreSQL.
  • Redesigned the low-latency API with Golang, Redis, PostgreSQL.
  • I’ve refactored the text-to-speech API service using async gRPC Python library.
  • Deployed services to Kubernetes cluster, automated CI/CD with TeamCity.
  • Responsibilities include code reviews, interviewing, mentoring.

Technology

  • Languages: Python, Golang, C++, SQL, bash
  • Packages: gRPC, TensorFlow Serving, Flask, Gunicorn, NumPy, SQLAlchemy.
  • DB: PostgreSQL DB, Redis, MongoDB
  • Tools: Docker, Kubernetes, Helm, Jira, Confluence, Bitbucket, TeamCity, PyCharm, Goland
 
 
 
 
 
Lead Software Developer
May 2017 – Sep 2018 Moscow, Russia

Achievements

  • I have designed the architecture and developed a biometric identification software solution, including a GUI client, server and embedded components.
  • I have led a team of two software developers in this project, hiring them and guiding them through the process.
  • To optimize identity recognition, I have used classic image processing algorithms and CNN.
  • I performed a technological proof test and prepared a report that complied with the NIST standards.
  • At three Russian conferences, “All-over-IP,” “SKUD,” and “TB Security Technology,” I presented prototypes of the bio-metric identification solutions.

Technology

  • Python, C++, Qt, C, SQL; Git (GitLab); Eclipse IDE, Qt Creator
  • OpenCV, Caffe, SciPy; SQLAlchemy; gRPC, MQTT; PostgreSQL; Ubuntu, MS Windows Server
 
 
 
 
 
Backend Software Developer
Nov 2016 – May 2017 Moscow, Russia

Achivements:

  • Web-commerce site backend development for a wine importer, made on in-house Python framework from scratch.

Technology:

  • Python 3.2, ExtJS 4; Git; vim, UMLet; PostgreSQL DB, SQLite, Apache HTTP Server, WSGI
 
 
 
 
 
Software Developer C++
Mar 2011 – May 2016 Moscow, Russia

Achievements

  • I developed a client-server app that simulated the tech operation of train stations and handed it over to the client. Thanks to the solutions I implemented, the client successfully fulfilled the contract for upgrading the tracks at Syzran station 1.
  • I designed and delivered a custom client-server system to the client, which helped them predict energy usage in a train section, among other things.
  • During my time here, I gained experience on ongoing projects and picked up two projects that the lead programmer had left behind.
  • I successfully delivered software and managed MySQL and Oracle databases.
  • As part of a team, including a project manager, and 2 interns, we worked together to complete project goals.

Technology

  • С++, SQL, HTML, XML, JavaScript; VSC CVS; Eclipse IDE, KDevelop, emacs
  • Oracle DB, MySQL, in-house RDBMS + Web Server; bash, Fedora Linux
 
 
 
 
 
Engineer
Nov 2010 – Jan 2012 Moscow, Russia
  • Developed 2 Windows desktop applications for satellite trajectory computations.
  • С++, Borland C++ Builder

Recent Posts

How dictionaries are implemented in the Python language

This post describes how dictionaries are implemented in the Python language.

This article is actually a repost of originally posted at Laurent Luce’s Blog August 29, 2011 by Laurent Luce. I mentor several students of russian Learn Python courses. They have questions about structures in Python and how to use them. I found this post a good help to me and possibly to my students.

How dictionaries are implemented in the Python language
Getting Mob Programming Buy-In at Your Organization

Repost of https://simpleprogrammer.com/mob-programming/.

This piece was a collaboration written by Nate Wixom and Torrey Powell.
This piece was a collaboration written by Nate Wixom and Torrey Powell.

Mob programming is the best approach for many development applications. Mob projects result in a more finished project at release, with fewer bugs. By focusing on one project at a time, teams can complete projects more efficiently, and those projects are higher quality, requiring fewer revisions.

Getting Mob Programming Buy-In at Your Organization