Summary

Kirill Mavreshko

Welcome, {{ visitor.name }}, to my personal page!

About me

A software developer for about 18 years , and counting.

Mostly was busy in projects handling high volumes of data, often in real time, and then doing something clever with them :-) I love writing smart software and not afraid to dig into the science of things for that.

Was working remotely for many years. Had to learn to be disciplined and organized since my pay was directly connected to quality and overall results of my work.

Also, I value my passion to a particular project much higher than the pay.

My skills

  • Programming languages (interspersedly):
    • Rust — Worked with Tokio, Actix-web, Yew, Sea-ORM while implementing Mealmind.
    • C++ — Coded with Boost (mostly). Developed various processing and analytical tools for large volumes of data (ad traffic), some with Python bindings.
    • Python — Web backends (a lot of Django) and data processing tools. Extensively used async to link multiple remote services.
    • C — High-traffic distributed morphology analysis of for internet ads (with ZeroMQ).
    • JavaScript / TypeScript Mostly developed prototypes using Angular.
    • in a long forgotten past worked on projects in C#, Java, Perl, PHP. Also familiar with Haskell and Lisp.
  • English CEFR Level C1 (Advanced). Worked with international teams.
  • Databases: PostgreSQL, CassandraDB, occasionally MongoDB and MySQL.
  • OS: Linux user since 2000 (currently Debian/Ubuntu).
  • DevOps: Decent Ansible, Docker, Kubernetes (managed a baremetal cluster), Jenkins, CI + Docker registry on GitLab CE.
  • Web stack: Know enough HTML + CSS to build simple prototypes and cooperate with more specialized team members.
  • Software Design: Walked the path from raw ideas to creating goals, user stories, and working prototypes. Love automated testing (without religious zeal or blind chasing after coverage), and pleasing whoever has to read my code after me.
  • Machine Learning: Deep understanding of modern neural network architectures and frameworks, the way they work and trained. Especially for NLP. Have experience coding for GPUs using OpenCL.
  • Organisational: Worked remotely for many years, part of the time as as freelancer. I believe this made me more responsible and self-organized.
  • Electronics (a hobby): Embedded development (Rust/C++) of IoT and other devices based on ARM (STM32) and Espressif (ESP8266, ESP32) microcontrollers, communicating through MQTT and HTTP.