Yuriy Netesov

Senior Software Engineer

Summary

~12 years of commercial software development experience including such domains as cluster management/monitoring software, embedded navigation systems, gamedev, server-side/backend systems, video-delivery, cybersecurity.
Value driven developer with passion to built software in a way that best matches business needs.
I like distributed systems, functional programming, "zero" latency, performance optimizations, algorithms.
Languages where I got most expertise are C++, Scala, Python.

Legal status

ActiveVideo

I have come back to ActiveVideo to work on their new platform - appcloud. Used technologies:
  • c++17, boost, standard library, catch2, trompeloeil
  • python, py.test
  • linux, git, gitlab, gitlab ci, docker
Achievements:
  • Optimized appcloud fingeprinting technology which allowed certain application to run on the platform way smoother
  • Refactored and partially rewrite HLS handling code - more performance, better readability/extendability and fixed bunch of bugs
  • Fixed numerous platform bugs which stabilized bunch of applications on the platform

Woov

  • http://woovapp.com
  • Senior backend developer -> Backend tech/team lead
  • April 2019 - August 2021 (2 years 5 month)
  • Amsterdam, Netherlands
Woov is a platform for digital and live festivals. Used technologies:
  • Scala, cats, cats-effect, fs2, http4s, doobie, sangria, circe, scalapb, elastic-4s, pureconfig, scalikejdbc, monocle, magnolia, scalajs
  • postgresql, elasticsearch, neo4j, firebase rtdb, firebase firestore, kafka, rabbitmq
  • aws, aws-cdk (typescript), aws ecs, aws ecr, aws rds, aws elastic, aws s3
  • sbt, git, pants-build, gitlab, docker, linux, shell scripting
  • python, pytest, asyncio, aiohttp
  • datadog, opentracing, kamon
Achievements:
  • Saved the day by making p95 request handling 10 times faster, right before the biggest festival - turning a huge disaster into huge victory
  • Implemented new CMS using scalajs and scalajs-react
  • Played scrum master role, introduced feature teams with guilds which improved daily communications
  • Designed and implemented some reusable parts for microservices to make start of a new microservice painless
  • Fixed numerous performance problems and memory leaks, which had visible effect on stability
  • Designed tracing and monitoring modules which improved incident response times
  • Organized hackathon to introduce api integration tests into the team and made it part of normal development practice
  • Designed and implemented in-memory cache with invalidation through rabbitmq/kafka messages - integrated into tooling used by content managers, replacing old implementation, this made content updates visible instantly
  • Migrated backend build from pants-build into sbt, which enabled team to benefit from some widespread tools (like scalapb, scalajs, etc)
  • Lead the effort of removing outdated scaldi dependency injection in favor of di through constructors and tagless final
  • Designed and participated in re-implementation of event search feature, significantly improving speed and stability in comparison to old implementation
  • Implemented location based cache for events for blazingly fast lookup of events
  • Implemented numerous features
  • Introduced numerous best practices and process improvements into company and team
  • Improved compilation time making it 2 times faster, enabling faster compile-run loop for team members.
  • Brought down number of compile warnings from over 10k to 0

ReaQta

  • http://reaqta.com
  • Backend Software Developer
  • April 2018 - March 2019 (11 months)
  • Amsterdam, Netherlands
Participated in actively growing startup specialized on cyber-security. I worked as a part of small backend team. Used technologies:
  • Scala, akka, akka http, akka streams, akka cluster, akka persistence, http4s, doobie, slick
  • circe, cats, specs2, scalatest
  • Cassandra, Elasticsearch
  • Kamon, prometheus
  • git, gitlab, jenkins, ansible
  • Linux, docker, python, bash/sh scripts, nginx
Achievements:
  • Implementation of various subsystems from scratch
  • Built sumulator/load testing system from scratch
  • Built 3rd-party analytics integration micro-service from scratch
  • Horizontal scaling of the platform (akka-cluster)
  • Implementation of custom split brain resolver(akka-cluster)

StackState/Xebia

  • http://stackstate.com
  • Backend Software Developer
  • October 2017 - March 2018 (6 months)
  • Utrecht, Netherlands
As a part of backend team I am developing innovative platform for algorithmic operations on IT infrastructure. Used technologies:
  • Scala, akka, akka http, akka stream, scalaz, scalatest, spray-json
  • Java 8
  • HDFS, HBase, kafka
  • Linux, python, bash/sh scripts
  • aws, ansible, terraform

ActiveVideo

  • http://activevideo.com
  • Senior Software Developer
  • January 2016 - September 2017 (1 year 9 months)
  • Hilversum, Netherlands
As a part of the small end-to-end scrum team I have developed features across several components of video delivery platform.

Used technologies:
  • Java 8, Scala, netty
  • C++11/14 (gcc toolchain, boost, standard library, gtest/gmock, ...)
  • Python (python2, tornado, py.test, ansible, pypcap, dpkt, ...)
  • Clustering, Double phase commit, failure detection, transactions
  • Linux, bash/sh scripts
  • Intel Media SDK (hardware transcoding)
  • Video delivery related - ffmpeg, mpeg2 TS, h264, mpeg2
  • ActiveMq, TCP/IP, IGMPv3
Achievements:
  • Clustering solutuion hardening - better handling of network partitioning and failure detection
  • Design and implementation of Smart Multiplexing
  • Introduced a special tool to capture user interactions on production and replay them on debug system
  • Refactored/bugfixed component test framework into something usable
  • Refactored statistics delivery pipeline (scala, activemq, netty)
  • Plenty of bug fixes and small features has been done

Bright Computing

I have been working as a member of a core team.
My responsibilities:
  • design and implementation of a new features
  • unit tests writing
  • support and refactoring of old code
  • interviewing new candidates
  • best practices integration
Used technologies:
  • C++14 (gcc toolchain, boost, standard library, gtest/gmock, ...)
  • Python (python2, tornado, jinja2, fabric, mock, ...)
  • mysql (sql)
  • linux (and a lot of standard stuff integration like named, dhclient, ntpd, ...)
  • perl, bash/sh scripts writing
Achievements:
  • Implemented a lot of core subsystems with nice unit tests coverage
  • Refactored some old subsystems
  • Fixed a lot of bugs in old code
  • Unit testing integrations
  • CI (jenkins) integrations
  • C++11/14 migration
  • Code review introduction
  • Helped with migration to Jira and Agile/Scrum like process

Cloudmade

  • http://cloudmade.com
  • Senior Software Developer
  • November 2012 - July 2014 (1 year 9 months)
  • Kiev, Ukraine
I have been one of core developers of Hybrid, Micromap and Mapsafe technologies - cross-platform libraries (android, linux, windows, wince, qnx, ...)
These technologies can be found in in-dash and on-dash navigation systems in cars.
Technologies used:
  • C++ (STL, boost, sqlite, spatialite),
  • Python (sqlalchemy, gevent, bottle, AMQP, rabbitmq)
  • postgresql
  • Client/Server, TCP/IP, GNU/Linux, Android, WinCE
  • Git, SVN
  • CMake, bash/sh scripting
Approaches:
  • Agile/Scrum
  • TDD
  • Code review, pair programming
My responsibilities:
  • Design/Implementation of new features
  • Customer communications, support cases and delivery process handling
  • Bug fixing
  • Refactoring of old code(10+ years)
  • Interviewing with new candidates
Achievements:
  • Integration of unified build system
  • Design/Implementation of several new features from scratch (keyword search, push notifications, etc)
  • Grow from regular developer to one of the key persons
  • Design and implementation from scratch of some web services with python
  • Work process support and improvements: code review, continuous integration, branch-per-feature
  • High unit tests coverage of new functionality

Dark Joker games

  • http://djm.kiev.ua
  • Server-side Software developer
  • April 2011 - October 2012 (1 year 7 months)
  • Kiev, Ukraine
I was part of very small backend team (2 developers).
My main responsibility was developing of new features for a social game backend.
Game have been hosted on many social platforms: vk.com, odnoklasniki.ru, my.mail.ru.
Technologies:
  • C++ (STL, boost)
  • Python
  • MySql
  • CMake
  • Client/Server, TCP/IP
  • GNU/Linux
Approaches:
  • Code review
  • Pair programming
My responsibilities:
  • Architecture of server side subsystems (game subsystems and core functional subsystems)
  • Massive refactoring of old code
  • Bugfix and analysis of crashes
  • Increasing of server performance and stability
Achievements:
  • Designed almost all new features with proper OOP/OOD design
  • Integrated modern software techniques and approaches: agile, code review, branch-per-feature model
  • Integrated mercurial, boost and other modern instruments into team work flow

Ubisoft Ukraine

  • http://ubi.com
  • Software developer
  • January 2010 - November 2010 (11 months)
  • Kiev, Ukraine
I have been a part of small team of developers. Our main task was to port “Splinter Cell 5 conviction” from PC/Ps3/Xbox platforms to a Mac Os X platform.
You can find information about the game here: http://en.wikipedia.org/wiki/Tom_Clancy%27s_Splinter_Cell:_Conviction
My main responsibility was network libraries porting and porting of general game code to a Mac Os X. Technologies:
  • C++
  • Client/Server, TCP/IP
  • Perl
  • Bash scripting
  • Xcode
  • A lot of internal Ubi technologies
My responsibilities:
  • Porting of core subsystems of the game from PC platform to Mac Os X
  • Porting of network subsystems from PC to Mac Os X
  • Code review
Achievements:
  • Ported all network and some core libraries
  • Ported big amount of code using manual and automated approaches

Vogster Entertainment LLC

  • http://vogster.com
  • Server-side Software Developer
  • January 2008 - October 2009 (1 year 10 months)
  • Kiev, Ukraine
I have been part of medium size team of server-side developers. My main responsibility was network connection between client and server, and between nodes in backend cluster also. I have been mainly working on server fault tolerance and performance, but also have implemented several game logic subsystems parts in C#. Technologies:
  • C++03(STL), C++/Cli, C#
  • RakNet
  • Client/Server, TCP/IP
  • XML/XSLT
Approaches:
  • Agile
  • Code review
  • Pair programming
  • Unit testing
My responsibilities:
  • Design and implementation of backend game subsystems parts
  • Optimization and profiling of backend cluster, performance testing
  • Protocol generation tools support and development
  • Distributed subsystems algorithms design and implementation
  • Wrappers for C/C++ libs to C# code writing
  • Bugfix
Achievements:
  • Introduced many fault tolerant principles and implemented them
  • Several new game logic features implementation
  • Great server code optimization
  • Profiling tools developed
  • RakNet wrapper for C# code implementation