Dmitry Lashkov
Verified Expert in Engineering
AI Agents Developer
Vilnius, Vilnius County, Lithuania
Toptal member since February 25, 2016
Dmitry is a software engineer with 15 years of experience. He has worked with large existing products, built complex ones from scratch, and hired and led remote teams of more than 10 people. Dmitry has the ability to focus, dive in, and gain a complete understanding of the problem he's solving. He loves automated tests, reviewed pull requests, and Agile methodologies because they allow developers to build quality products and iterate quickly. Ruby and Python are Dmitry's technologies of choice.
Portfolio
Experience
Availability
Preferred Environment
Git, Bash, Ubuntu, IntelliJ IDEA
The most amazing...
...thing I've built is a profile KNN vector similarity engine that momentarily ranks millions of candidates from most to least similar using one example candidate.
Work Experience
Founding Engineer
Clara AI
- Designed and built the core of the scheduling assistant powered by LLM. Took into account race conditions, future expansion of business logic, and possible multiple communication channels. Ensured that the foundation is stable and well-tested.
- Conducted extensive prompt engineering work for complex data extraction tasks and achieved high prompt accuracy.
- Implemented efficient and instantaneous Google calendar synchronization using push notifications and covered complex edge cases like recurring events.
CTO
Teamable
- Built a remote engineering team of more than 10 people, authored coding challenges and conducted hundreds of interviews. Introduced cross-functional self-sufficient teams. Came up with tech debt management strategy.
- Developed a candidate recommendation system based on Word2vec and the k-nearest neighbors algorithm. Came up with innovative embedding techniques that allowed me to accurately represent profile structure within a vector.
- Introduced the first pages of the Vue app and led the effort to migrate the entire app from server-rendered Rails pages to Vue. Trained other engineers to use the Vue framework.
- Built a chatbot that could find candidates for hiring. The chatbot would ask for a job description and then would show example candidates asking to approve or reject them. Generated a reach-out campaign text using LLM and started sourcing.
- Built an experimental call bot that could join Zoom and Google Meet calls as a participant, transcribe everything that was said, understand spoken commands, and immediately make notes in Google documents.
- Learned the business logic of a referrals startup and completely rewrote specifications to make it part of the main system. Initiated the rewrite work, then guided multiple teams to finish the rewrite based on specs.
- Learned the business logic of a scheduling assistant startup and led other engineers to make sensitive changes and improvements.
- Led the effort to Dockerize and transition all services from Heroku to AWS. All services were transitioned to ECS Fargate clusters quickly and without downtime, which resulted in increased stability, reduced costs, and better system monitoring.
- Led the effort to create a stable and resumable ETL data pipeline from PostgreSQL to BigQuery to OpenSearch. Configured the PostgreSQL to BigQuery part of the pipeline using HevoData and worked with the data engineer to build the BigQuery to OpenSearch part.
Lead Engineer
Teamable
- Extracted a high-load and sensitive Gmail synchronization service from a monolith app. Service integration was based on an event-driven architecture. The newly extracted service supported on-premise deployments to address customers' privacy concerns.
- Spearheaded the effort to increase the stability of the overall system. Improved system design using best practices like the single responsibility principle, separation of concerns, encapsulation, and extensive test coverage. Introduced CI/CD pipelines.
- Build the first version of customer-facing reports and the first version of automation for the back-office human-in-the-loop tool.
- Stabilized background job processing systems using Redis/SQL locks and introduced the concept of unique jobs, differentiated queues, and workers.
- Increased the stability and speed of a browser extension several times by breaking up several expensive back-end calls into smaller ones processed asynchronously. Additionally, the extension used innovative and reliable page parsing techniques.
- Led the team working on the applicant tracking system (ATS) data ingestion pipeline. The isolated ATS data ingestion service was processing data from different ATSs and sending standardized ATS events to the main system.
Lead Full-stack Developer
Ourea
- Led a team of developers to convert a single-tenant fintech app into a multi-tenant one.
- Implemented reliable imports of customer and financial data.
- Helped pick the next best feature based on the ROI.
- Managed tech debt, helping to make refactoring decisions based on tradeoffs between long-term stability and immediate development time investment.
- Worked on improving the reliability of microservices integration.
- Introduced peer-reviewed pull requests and continuous deployment with CircleCI.
Full-stack Developer
Surge AI
- Wrote a flexible client crediting solution allowing clients to hire workers for one-off online jobs. Clients could use both prepaid mode and weekly/monthly charges based on the amount of services used. Credit limit and other limits were put in place.
- Found and fixed multiple race conditions and other bugs in the previously written PayPal integration code for incoming client and outgoing worker payments. As a result, the company stopped losing money because of incorrectly processed payments.
- Introduced the DRY principle, lean models, and a controller approach by extracting business logic into specialized service classes. All new code, including service classes, received full coverage with specs.
- Found and fixed bugs in the subsystem accounting for the amount of work done by workers.
- Made the whole test suite pass by fixing all previously broken tests, introduced Better Specs guidelines, and continuous deployment using CircleCI.
- Optimized slow and complex SQL queries by replacing nested queries with outer joins.
- Improved the quality of the code submitted by colleagues by carefully reviewing pull requests.
Lead Front-end Developer
Anatas
- Integrated the app with a new infrastructure of Node.js Express microservices used to control CloudFoundry.
- Led a team of developers reviving and migrating an Ember 1 enterprise cloud management app without Ember Data to Ember 2 with Ember Data. The goal of winning corporate tender was successfully achieved.
- Improved UI/UX and in-app workflows. Introduced Ember components with a "data down actions up" approach.
- Introduced SCSS with multiple partials, mixins, and variables instead of one CSS file.
- Cleaned up the codebase and enforced strict coding standards on pull requests using ESLint. Added back-end mocking with Mirage.
Full-stack Developer | CTO | Co-founder
Playgong
- Implemented a fully-fledged API for Android, iOS, and Ember apps from scratch.
- Set up process monitoring with Monit to quickly recover from possible downtimes.
- Built a responsive Ember CLI app that consumes the API and reports JavaScript errors to Errbit.
- Extended the Rails architecture with class groups like services (for business logic), policies (for authorization), and queries (for fetching records) to avoid bloated controllers and models.
- Implemented an effective API versioning scheme with only the two latest API versions to maintain.
- Set up continuous deployment (CD) process via Jenkins, automated tests, and hot unicorn deploys via Capistrano.
- Implemented leaderboard versioning, allowing users to change any game result and recalculate the leaderboard state.
- Achieved 100% test coverage of the codebase with unit, controller, and integration tests.
- Set up a separate Ember deployment process with asset uploads to Amazon S3 and API behind an NGINX reverse proxy.
Ruby Developer
Vinted
- Worked on implementing an escrow subsystem of the marketplace by integrating a white labeled payment system via REST API.
- Integrated package delivery monitoring for the escrow subsystem.
- Led a team as a scrum master to implement vouchers for the marketplace.
- Developed company account balance calculation that separated voucher money from escrow money and showed turnover.
- Implemented funnel tracking in the internal analytics tool.
- Implemented app-wide feature switches and integrated them with existing A/B test functionality.
- Refactored old parts of the system via a two-step process of new tests first and refactoring itself second.
- Eliminated race conditions in an internal marketing campaign tool.
Full-stack Developer
Same System
- Implemented a retail shop network budget analysis tool from back-end to front-end.
- Maintained and updated the salary calculations subsystem for various jurisdictions.
- Rewrote the vacation planner and other old and neglected parts of the system.
- Eliminated numerous haunting false positives from headless browser Cucumber integration tests using a deterministic approach.
- Developed a library for time segment calculus and a library for table generation in CSV, HTML, and JSON formats.
Full-stack Developer, Co-founder
Tenderella
- Designed a PostgreSQL database for various tender types and accompanying official notices. Created a web scraper for public tenders using Ruby. Integrated Resque with Rufus Scheduler for periodical runs of the web scraper.
- Used Ruby on Rails single table inheritance and polymorphic associations to solve the problem of many types of tenders and notices.
- Integrated Solr for fast and relevant tender search.
Experience
Konstructor | Ruby Gem
https://github.com/snovity/konstructorQuantum Modeling of Simple Molecules
Casual Multiplayer Games
Intranet Drug Accounting System
Education
Specialist's Degree in Software Engineering and Applied Mathemtatics
Moscow State University - Moscow, Russia
Skills
Libraries/APIs
JSON API, Node.js, Nokogiri, Sidekiq, JSONP, Ruby on Rails API, Pydantic, SQLAlchemy, REST APIs, Delayed Job, Stripe, Handlebars, Ember Data, Underscore.js, Vue, Vue 2, NumPy, Stripe API, React
Tools
Airbrake, JBuilder, RSpec, NPM, Git, Amazon Elastic Container Service (ECS), Docker Compose, ChatGPT, GitHub, Looker, Grunt, NGINX, Bower, Amazon Elastic Container Registry (ECR), Amazon OpenSearch, Solr, BigQuery, IntelliJ IDEA
Languages
HTML, Python, HTML5, Ruby, YAML, SQL, SCSS, CSS, CSS3, JavaScript, C, Unicorn, Bash, C++, C#, Haml, Microsoft Assembly x86 (MASM), ActionScript 3
Frameworks
Capybara, Express.js, Ruby on Rails (RoR), Ember.js, Flask, Factory Girl, Selenium, Django, Alembic
Paradigms
Microservices, Concurrent Programming, Behavior-driven Development (BDD), Object-oriented Programming (OOP), Scrum, Test-driven Development (TDD), Model View Controller (MVC), ACID, Continuous Deployment, Back-end Architecture, Event-driven Architecture, Object-relational Mapping (ORM), Requirements Analysis, Agile Software Development, Kanban, ETL
Platforms
Heroku, Docker, Linux, Amazon Web Services (AWS), Ubuntu, FreeBSD
Storage
JSON, PostgreSQL, Redis, Memcached, MySQL, Elasticsearch, Redis Cache, Amazon S3 (AWS S3), MongoDB, Data Pipelines, NoSQL
Other
Ruby Gems, Lean Startups, User Stories, Ruby Performance, Prompt Engineering, Amazon RDS, CTO, Remote Team Leadership, Word2Vec, K-nearest Neighbors (KNN), OpenAI, AI Agents, Chatbots, Solution Architecture, Data Extraction, Technical Leadership, Technical Hiring, Architecture, Full-stack Development, CI/CD Pipelines, Full-stack, APIs, Back-end, Back-end Performance, Bots, OAuth, Software Architecture, Back-end Development, Team Leadership, Startups, API Platforms, API Integration, Applicant Tracking Software (ATS), Puma, Ember CLI, Large Language Models (LLMs), Leadership, Cross-functional Team Leadership, Cloud Infrastructure, Containers, Stripe Payments, Stream Processing, Mirage, Cloud Foundry, Artificial Intelligence (AI), Quantum Computing, Image Recognition, System Programming, Physics, Calculus, Probability Theory, FastAPI, Google BigQuery
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring