Senior Developer and CEO2011 - PRESENTPrimetalk
Technologies: Java, Scala
- Developed a sophisticated real-time natural speech dialog application platform SpeechPortal.
- Created an open source real-time functional reactive programming (FRP) framework SynapseGrid.
- Built the Speech Assistant dialog application on the SpeechPortal platform.
- Programmed a taxi ordering dialog application.
- Created a company website.
- Developed a complex natural language regular expressions library.
- Implemented SKY probabilistic parser.
Senior Innovation Developer2019 - 2020Adaptive
Technologies: Slackbot, Slack App, Slack, Terraform, Go
- Developed a Slack bot to facilitate the communication of the company strategy to each employee.
- Implemented a complete CI solution based on Terraform, TravisCI.
- Implemented a code generation solution that decreased the boilerplate, which is hardly avoidable in Golang (due to the absence of generics).
Innovation Developer2016 - 2019Cotiviti Labs
Technologies: Amazon Web Services (AWS), AWS, Terraform, Ansible, Scala
- Developed a formal language for business rules that reads like English based on lambda calculus.
- Implemented a scalable constant memory streaming event processing engine.
- Developed a scalable constant memory streaming crawling solution for monitoring a bunch of websites for content changes.
- Operated a domestic content management solution along with the crawler using Ansible/Terraform for a couple of months.
- Implemented DSL for specifying test criteria (specs) of complex business rules.
Senior Software Developer2014 - 2016Mail.ru
Technologies: Apache Kafka, Slick, PostgreSQL, Play, Scala
- Created a new game control and logging tool for Allods-online MMORPG on the modern technology stack.
- Implemented a rather general architectural approach to build the system that reduces maintenance effort. The domain model is described with ontology and is separated from the system level.
- Implemented event sourcing + TimeMachine, which allows the user to reconstruct the state of world's objects at any past moment.
- Replaced a legacy logging facility with Kafka.
- Created a database with table inheritance, partitioning, custom types, and incremental materialized views.
- Implemented a distributed fault tolerance architecture for ETL and other long running processes.
Branch Director2008 - 2011Reksoft
- Arranged and managed development processes.
- Hired ~20 employees (screened 100+ candidates).
- Consulted on architecture for multiple projects.
- Created an inventory DB application.
- Handled initial training and testing of new team members.
Lecturer2001 - 2011Voronezh State University
- Taught several courses in computer science and computer-related professional subjects, including spoken dialog systems, Unix system administration, control systems, decision-making systems, and project management.
Development Department Head2005 - 2008Open technologies 98
Technologies: WWF, Windows Presentation Foundation (WPF), C#
- Established a team of programmers from scratch (up to 8 developers).
- Created a real-time alarm monitoring system (WPF) with complete testing environment to model buildings.
- Created a three-tier contract administration program.
- Created a prototype application for business information extraction from emails and a templating engine using MS Word.
- Created a nifty utility to represent a SharePoint portal as an XML-infoset for processing the whole portal with XSL.