Contact information
- Mikhail Gusarov
- E-mail cv@dt.mg
- Phone +356 99100291 (timezone is UTC+1)
Summary
I design, develop, maintain and run software systems with a focus on long-term maintainability, and lead small teams doing so.
Software design, development & operations
In Ridge I produce software architecture, component design and supporting tools and procedures. I also implement a quite a bit of the design.
In Luminati I have designed and implemented application-devel metrics and logging system, providing visibility into the application behaviour, and created an application-specific database system to eliminate the bottleneck that could not be solved by off-the-shelf database.
In OpenInkpot I have designed and guided the effort to develop embedded Linux distribution suited for eBook readers, from kernel up to custom UI optimized for e-Ink screens.
Outside of commercial context I am a contributor to numerous open source
projects, including well-known ones such
as BusyBox, fontconfig, GNOME, Linux and VLC. Some of my code is present on
most Linux machines: if you’re on desktop Linux, you might want to run
man 1 unshare
and check AUTHORS
section.
Technical leadership
I know how to introduce, set up and fine tune processes of software development, testing and deployment. In Ridge, CFEngine and OpenInkpot I have established engineering processes of code review, continuous integration and unit- and acceptance-testing.
Product management
In Ridge I define product requirements based on collected customers' needs to make the product appealing to all roles in customers' organizations.
In OpenInkpot I defined the product scope, collected customers' needs and translated them into product requirements.
Project management
I have some experience managing small teams, especially volunteer-based: In OpenInkpot I managed volunteer contributors and a distributed team to produce software for Azbooka e-reader.
What do I expect?
Remote work and a flexible work schedule, to a reasonable extent.
Projects/Companies
Ridge (2018+)
Software architect.
I’m responsible for creating product requirements, software architecture, internal tools and development procedures.
Hola! / Luminati (2013-2018)
Senior software engineer.
I have improved insight into performance of Hola services by adding
- centralised application-level logging, and
- application-level metrics
that made it much easier to pinpoint and resolve performance problems and bugs.
I have created several internal-facing statistic dashboards for Hola VPN and also user-facing statistics for Hola Spark CDN.
While working on Luminati I have implemented a custom in-memory DB to track the status of 1M+ peers of Luminati network that decreased the price of hardware running this database by 8x compared to the off-the-shelf DB.
CFEngine (2011-2013)
Senior software engineer.
OpenInkpot (2007-2012)
Founder, software developer, product manager, project manager.
A Linux distribution for eBook readers. I have started it, have built the infrastructure (from bugtracking to cross-compiling Debian packages in CI environment to repository manager) and have implemented lot of low-level code.
Parallels (2004-2007)
-
Software engineer in Plesk for Unix. I have created a tool for transferring contents of competing hosting panels to Plesk, which was then repurposed as a backup system.
-
Software architect in OpenFusion. I have designed SSO mechanism for Parallels apps, and also a Web applications packaging format (Wikipedia page).
Other
From | To | Name | Description | |
---|---|---|---|---|
2009 | 2010 | IPlinux | Companion project for OpenInkpot, generic embedded Linux distribution. Design and implementation. | |
2007 | 2009 | ALTÂ Linux | Desktop/server Linux distribution. Maintenance of infrastructure and documentation for development team. | |
2003 | 2004 | Axmor | R&D work for IBM, evaluating new technologies for IBM projects. Also system administration. | |
2003 | 2003 | Novosoft | An intern! My first “real” place of work. Billing system based on Cisco NetFlow. |
Education
MSc in CS. Novosibirsk State University, 2000-2005.
Systems Theory, Systems Management courses. Systems Management School, 2018-2020.
Keywords
Go, Kafka, Google Cloud, Kubernetes, Terraform, C, Linux, Debian, Korn-like shells, POSIX/SUSv3, Javascript, Node.js, Python, git, CFEngine, MongoDB, various Internet protocols, REST, ElasticSearch, AWS, Clojure, various Unices, Django, SQLite, PostgreSQL.