Kiril Kamenev, Developer in Helsinki, Finland
Kiril is available for hire
Hire Kiril

Kiril Kamenev

Verified Expert  in Engineering

Software Developer

Helsinki, Finland

Toptal member since January 12, 2022

Bio

Kiril has over 20 years of experience designing and implementing complex enterprise software, including cloud-based, highly distributed systems trusted by the world's largest telecom operators and high-profile banks. He also developed a few startup projects from the ground up until production deployment and operation. Very result-oriented, Kiril has acted as a technical lead. He enjoys taking full end-to-end ownership of the solution.

Portfolio

A.Team
TypeScript, Node.js, React, Python, FastAPI, MongoDB, Elasticsearch, REST...
Nokia
Java, Apache Cassandra, Spring Boot, Apache Kafka, Akka, Actor Model, Docker...
Comptel
Java, Spring, JavaScript, Complex Event Processing (CEP), Hibernate, OpenStack...

Experience

  • Software Development - 20 years
  • Java - 20 years
  • Spring - 14 years
  • Software Architecture - 10 years
  • JavaScript - 8 years
  • Spring Boot - 7 years
  • Docker - 5 years
  • Cloud - 4 years

Availability

Part-time

Preferred Environment

Java, Spring, Software Architecture, JavaScript, React, Angular, Full-stack, Cloud, Node.js, Python

The most amazing...

...thing I've developed was a system that grew from a hobby project to the official competition management system of the Finnish Gymnastics Federation.

Work Experience

Senior Full-stack Engineer

2022 - 2023
A.Team
  • Established a Prefect-based data ETL infrastructure to process various events generated in the system and update data in ElasticSearch to enable flexible searches.
  • Ported an existing Python microservice from Flask to Fast API, including security infrastructure, data validation, etc.
  • Implemented various features in a React and Node.js-based application, specifically UI components, REST and GraphQL endpoints, MongoDB queries, etc.
Technologies: TypeScript, Node.js, React, Python, FastAPI, MongoDB, Elasticsearch, REST, GraphQL, AWS Lambda, ECS, Kubernetes, Docker, MobX, Cloud Architecture, Application Architecture, Technical Architecture, Amazon Web Services (AWS), Enterprise Architecture

Lead Architect

2016 - 2022
Nokia
  • Analyzed existing product architecture and identified its shortcomings.
  • Designed a way to introduce fault-tolerance into an existing business process automation application.
  • Designed a new cloud-native distributed application architecture to address its shortcomings by applying techniques like message-driven communication, event sourcing, consistent hashing, scalable NoSQL data store, and non-blocking execution.
  • Acted as a technical lead for a team of seven to ten people.
  • Created and implemented a reliable message processing framework with exactly-once processing semantics.
  • Designed a Cassandra-based application data model and implemented the functionality using this model.
  • Implemented a custom BPMN-based workflow engine to run automation workflows.
  • Participated in a few trial deployments of the new system.
Technologies: Java, Apache Cassandra, Spring Boot, Apache Kafka, Akka, Actor Model, Docker, Helm, Prometheus, Cloud, Message Queues, Software Architecture, PostgreSQL, RDBMS, Distributed Systems, Distributed Databases, Spring Microservice, Microservices Architecture, RESTful Microservices, SQL, SSL, Software Design, CTO, REST APIs, JSON, Architecture, Back-end Development, Back-end Architecture, Performance Tuning, Back-end Performance, APIs, Amazon Web Services (AWS), Solution Architecture, Cloud Environments, Technical Leadership, Agile Software Development, API Architecture, Distributed Software, Apache Maven, Jenkins, Git, Kubernetes, Containers, Agile, Leadership, Software Development Lifecycle (SDLC), Security, DevOps, CI/CD Pipelines, Cloud Architecture, Application Architecture, Technical Architecture, Enterprise Architecture

Software Architect

2012 - 2016
Comptel
  • Re-implemented an existing PHP-based web app in Java, replacing a traditional server-rendered UI with SPA/REST architecture.
  • Established application back-end architecture, including data model, security, and an API.
  • Designed and implemented APIs to be consumed by SPA clients.
  • Implemented SPA client-side functionality using JavaScript.
  • Worked on improvements, including reliability, performance, and so on, in a distributed event processing platform.
  • Designed a way to deploy the existing telecom application as a virtual network function, i.e., made it cloud-friendly, improved packaging and deployment, and more.
Technologies: Java, Spring, JavaScript, Complex Event Processing (CEP), Hibernate, OpenStack, Cloud, Network Function Virtualization (NFV), Software Architecture, RDBMS, Distributed Systems, Web Security, SQL, SSL, Software Design, REST APIs, JSON, Architecture, Back-end Development, Back-end Architecture, Performance Tuning, Back-end Performance, APIs, Amazon Web Services (AWS), Technical Leadership, Agile Software Development, API Architecture, Full-stack, Full-stack Development, Web, Front-end, Distributed Software, Spring Security, Apache Maven, Jenkins, Agile, Leadership, Software Development Lifecycle (SDLC), Security, DevOps, CI/CD Pipelines, Application Architecture, Technical Architecture, Enterprise Architecture

Senior Software Engineer

2007 - 2012
Giesecke & Devrient
  • Implemented a JMS-based inter-component communication framework.
  • Designed and implemented a layered protocol stack to deal with various aspects of provisioning, such as wire protocol, application type, target device, etc.
  • Implemented a workflow execution engine that resulted in performance improvements by order of magnitude.
  • Implemented data-model supporting multi-tenant SaaS.
  • Implemented integrations with partner systems using SOAP and REST.
Technologies: Java, Spring, Oracle, Java Message Service (JMS), ActiveMQ, Spring Security, Vaadin, Message Queues, SOAP, Web Services, REST, API Integration, RDBMS, Spring MVC, Distributed Systems, Web Security, SQL, SSL, Integration, Software Design, MySQL, Back-end Development, Performance Tuning, Back-end Performance, Agile Software Development, Startups, Distributed Software, Apache Maven, Jenkins, Agile, Software Development Lifecycle (SDLC), Security, DevOps, CI/CD Pipelines, Payment Gateways, Application Architecture, Technical Architecture

Senior Software Engineer

2001 - 2007
Nokia
  • Developed an application platform for a family of network management applications.
  • Contributed to the high availability design of the application platform.
  • Built various features of a cellular network optimization tool.
  • Designed a single sign-on mechanism for Java Web Start applications.
Technologies: Java, Enterprise Java Beans (EJB), Swing, Oracle, LDAP, Jakarta EE, Java Web Start, RDBMS, SQL, Back-end Development, Performance Tuning, Back-end Performance, Agile Software Development, Agile, Software Development Lifecycle (SDLC), Application Architecture

Software Engineer

2000 - 2001
Lithuanian Airlines (Out of Business)
  • Developed an information system used to maintain inventory of airplane spare parts, order new parts, schedule part replacement on planes, etc.
  • Implemented new features, like adding new workflows, reports, etc.
  • Took care of software installations. Trained company personnel to use the software.
Technologies: Delphi

Cloud-native Process Automation Platform

I designed and implemented the core part of a platform for automating the configuration of communication networks. The intention was to build a replacement for an existing system that did not meet several non-functional requirements, including performance, scalability, and fault tolerance. The new system addressed existing issues by applying some architectural principles, such as message-driven communication, event sourcing, consistent hashing, scalable NoSQL data store, and non-blocking execution. Proper application of these techniques resulted in a reliable framework that was consistently used across all relevant microservices. One of the key challenges was to develop a mechanism to ensure exactly-once message processing semantics on top of the Kafka message bus.

Sport Competition Hosting Platform

https://kisanet.fi
In 2017, I started working on a project that eventually became the system that the Finnish Gymnastics Federation uses to host all of its competitions (over 200 per year, about 1000 to date).

The system includes features for athletes, event organizers, and the general public. I designed and implemented the system from the ground up using Spring Boot and Angular.

I also addressed all the issues related to running the service: deployment, upgrades, backups, occasional outsourcing of some work to freelancers, etc. The system provided many benefits for all user groups:

• Improved productivity for event organizers through rich and functional UI and a paperless real-time scoring system.
• Improved visibility and control for the Federation through reporting and centralized management.
• Better experience for the public through a responsive UI and real-time access to competition results as well as results archives.
• Easy integration for media (TV, online streaming) to embed scoring data in their content.
The system consistently gains high scores in surveys performed by the Federation.

Virtual Sport Competition Hosting Platform

http://vikis.fi
In response to COVID-19 lockdowns, I developed a platform facilitating virtual competitions where participants' performances are recorded on their phones, uploaded to the server, and later automatically streamed to judges and the general public.

The system included a mobile app for recording the video and enforcing constraints (time window, number of attempts, etc.) and a management web application (React).

The integrated solution includes a video-on-demand service, streaming software (OBS), ticket sale system, and end user mobile app. Many parts of the system required real-time communication implemented with web sockets.

Over 100 competitions were hosted via the system during the lockdowns, which helped keep children active and motivated.

NFC Payment Application Provisioning Platform

A secure platform that allows the integration between NFC payment ecosystem players: banks, credit card transaction processors, mobile device manufacturers, and telecom operators. The platform enables the provisioning of any payment app from any bank on any device without countless point-to-point integrations. The platform complied with the strictest security requirements of the banking industry.

Shopify App

This is an application enabling easy video content integration into Shopify stores. The application consisted of two parts: an administration UI for the merchant and the actual JavaScript application embedded into the store that adds required functionality.
2003 - 2005

Master's Degree in Telecommunication Software

Helsinki University of Technology - Helsinki, Finland

1997 - 2001

Bachelor's Degree in Computer Science

Vilnius University - Vilnius, Lithuania

Libraries/APIs

REST APIs, React, Java Message Service (JMS), Node.js, React Redux, Shopify API, MobX

Tools

Apache Maven, Git, ActiveMQ, Helm, Grafana, Redux Thunk, Jenkins

Languages

Java, JavaScript, TypeScript, SQL, HTML5, CSS, SCSS, Python, Sass, HTML, GraphQL, Delphi

Frameworks

Spring, Spring Security, Spring Boot, Angular, Hibernate, Akka, AngularJS, Spring MVC, Spring Microservice, Swing, Java Web Start, Vaadin, Thymeleaf, Redux

Paradigms

REST, Back-end Architecture, Agile Software Development, API Architecture, Agile, Test-driven Development (TDD), Application Architecture, Actor Model, Microservices, Microservices Architecture, DevOps, Network Function Virtualization (NFV)

Storage

JSON, Cassandra, RDBMS, Distributed Databases, MySQL, Cloud Environments, MariaDB, PostgreSQL, Hazelcast, MongoDB, Elasticsearch

Platforms

Apache Kafka, Amazon Web Services (AWS), Web, Kubernetes, AWS Lambda, Linux, Oracle, Jakarta EE, Docker, OpenStack, Azure, Mobile, Shopify

Industry Expertise

Telecommunications

Other

Software Development, Software Architecture, Architecture, Distributed Systems, Software Design, Back-end Development, Performance Tuning, Back-end Performance, APIs, Solution Architecture, Distributed Software, Containerization, Software Development Lifecycle (SDLC), Technical Architecture, Cloud, Akka Actors, Galera Cluster, Message Queues, SOAP, Web Services, API Integration, Web Security, RESTful Microservices, Integration, CTO, Front-end Development, HTML5 Video, Technical Leadership, Full-stack, Full-stack Development, Startups, Front-end, Containers, Security, CI/CD Pipelines, Product Management, Cloud Architecture, Mathematical Analysis, Enterprise Java Beans (EJB), LDAP, Complex Event Processing (CEP), Apache Cassandra, Prometheus, Responsive Design, SSL, WebSockets, Semantic UI, Leadership, FastAPI, ECS, Payment Gateways, Enterprise Architecture

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring