
I have almost two decades of professional experience mainly in relation to web technologies. I've been using multiple languages throughout my career: Ruby, Javascript/Typescript, Elixir, Rust, Go, Java and C. I am Ruby on Rails contributor (almost 600 commits committed to Ruby on Rails core). Additionally I have experience with the following:


● I developed a TypeScript based SDK for interfacing with the SpacetimeDB database.
● I developed and maintained a tool for deploy...
● I developed a TypeScript based SDK for interfacing with the SpacetimeDB database.
● I developed and maintained a tool for deploying and doing basic ops tasks through our company Discord that
made it much easier for people without Kubernetes or Ansible knowledge to perform these ops tasks.
● I planned and led the effort to prepare a Kubernetes based setup for handling all of the company’s observability
needs, which allowed us to experiment with what metrics, logs, and traces are most valuable, without incurring
the heavy costs of a hosted solution. The monitoring setup is provisioned with Terraform and uses Kubernetes,
ArgoCD, Grafana, Prometheus, Thanos, ElasticSearch, and Grafana Tempo.
● I planned and led the effort to set up our PaaS offering that is provider-agnostic, and can be set up on dedicated
servers, allowing us to keep server costs down compared to a cloud-based setup. The setup is based on Ansible.
● I planned and led the effort to modify the PaaS setup in order to allow us adding custom enterprise clusters
easily, which enables the company to sell an Enterprise offering to customers that need an isolated environment.
● I worked on introducing SRE best practices into the company, and I trained employees for an on-call rotation.
● I rewrote data migration scripts from Ruby to SQL in order to speed them up from execution time measured in
days to execution ti...
● I rewrote data migration scripts from Ruby to SQL in order to speed them up from execution time measured in
days to execution time measured in hours, so we could lower the customer impact of the data migration to a
minimum. I also created a set of automated checks to ensure the migration scripts are correct.
● I improved observability of the system by adding event tracing and improving metrics coverage, which let us
identify and fix issues more quickly.
● By leveraging the distributed tracing setup, I optimized the system by reducing complexity in communication
between services, which resulted in decreasing the infrastructure costs by an order of magnitude.
● I worked on optimizing Ruby on Rails/PostgreSQL backend during massive traffic growth, which helped the
company grow further and...
● I worked on optimizing Ruby on Rails/PostgreSQL backend during massive traffic growth, which helped the
company grow further and secure contracts from bigger clients.
● I have worked on planning and extracting chat functionality into a separate microservice, which made it easier to
scale it separately as it was a high RPS part of the system.
● I designed and led the team that wrote a real-time WebSocket-based service in Rust. Thanks to the design we
were able to deliver a first version of the service in just 3 weeks and without much modification the service was
able to handle a million WebSocket connections per server, thus requiring few changes to support the company's
continued growth.
● I helped to introduce SRE practices in the company, like post mortems and on-call practices, which allowed the
company to handle incidents more efficiently and learn from them.
● As part of the Developer Experience team I led an effort to create company-wide tools for instrumenting new
microservices written in Ruby or Node.js. The tools allowed standardization of instrumentation across multiple
applications and microservices, enabled seamless integration with our distributed tracing setup, and let teams
easily add custom metrics and traces for application-specific instrumentation.
● As part of the performance team I have set up production profiling for Ruby based applications that allowed
developers identify performance issues quicker.