Name: Dzmitry Lahoda
Target role: Senior Software Engineer
- Well-versed product-oriented Software Engineer offering 11+ years of IT experience with experience .NET technical leadership in different project types and domains. 10+ projects in total.
- Versatile experience in multi-model data storages (SQL, NoSQL, search).
- Strong understanding of efficient and effective engineering and process practices to deliver high-quality results in time (short term, long term)
- Good communications skills, proven ability to communicate clearly and concisely with both, technical specialists and product owners
- Proficient with integration solutions (private/public APIs, client-server)
- Product/quality/lean/transparency oriented mindset
- Started from desktop Windows applications development, and transitioned into cloud-native server-side.
- Have experience in custom software frameworks, reusable libraries, open-source
- Computer user since 1993, write programs since 2004, code version control and automated tests since 2007, increase my velocity by open-source since 2009, work in companies since 2010, self-learner since childhood, do active learning and incremental reading
- Getting joy applying machine learning(especially discovery-search), automated software verification(type systems) and from complex realtime distributed synchronization.
- Experienced from a low level near operating system coding to high-level collaborative systems integration
2019.11 - now, full-time. jet.com. Software Engineer
2019.08 - 2019.10, full-time. Luware BLR. Senior Backend Software Engineer/DevOps
Telecom domain in small fast-paced product team.
2018.10 - 2019.08.09, full-time. Heyworks LLC. Senior Software Engineer
GameDev in the small design studio, diversity included.
2017.10 - 2018.10, full-time. ETAS. Contractor
Engineering domain in Scaled Agile Framework.
2010-2017, full time. Thomson Reuters. Contractor
Learned financial and legal domains in large organization providing services to professionals.
2014-2018, full time. EPAM Systems. Lead Software Engineer
Tried different roles and activities within big outsourcing company.
2010-2013, full time. EPAM Systems. Software Engineer
Grown from indie developer to enterprise-class professional.
2008.07, 2009.07, internship. Institute of Physical Biology
Scientific domain and hands-on experience in collaboration with scientists on English.
2008.08-10, internship. Itransition
Expert writer of C# 2-7.3, F#, JSON, texts, SQL, XML, XAML, YAML, Markdown. Can read/write at various levels PowerShell, Python, C, PlantUML, vanilla HTML/CSS/JS.
Early days, wrote in Delphi, Pascal, Matlab.
Used SQL(https://en.wikipedia.org/wiki/SQL) since 2004, used Oracle SQL heavily for 1.5 years. MS SQL Server 1+ year.
Used LINQ, NHibernate 2, NEST
Earlier days used MySQL 5.1 via JPA 1.
Expert .NET(2.0-2.7, Core 2.2, TPL), advanced ASP.NET API/Orleans, understand Web.
Earlier days used Java EE5/EJB 3, IIS 5-7, ASP.NET WebForms.
Collaboration and project
Enjoyed MatterMost, GitLab, ProjectLibre, FreeMind, VUE, OpenRepGrid, PlantUml, GraphViz, Spreadsheets as tools for organization and analysis.
Advanced XAML, Windows, MVVM. Some random vanilla HTML+JS+CSS since 2004.
I type in Visual Studio Code. I use ILSpy, GIT, SSH, PWSH, full desktop search tools. Previously SVN, Notepad++.
2019.11 - now, full time. eCommerce Point of Sale
- Helped to deliver CCPA regulation to deadline
- Microservices, event sourcing, graph storage, DevOps, research, planning, code review, requirements analysis, coordination, privacy regulations, monitoring
- F#, ASP.NET
2019.08 - 2019.10, full-time. Call and contact center
Cloud-native microservice-based call and contact center integrated with Microsoft Teams.
- Made call handling microservice scalable by eliminating in-memory state.
- Proposed and communicated improvements to changed build and deployment to be cloud-native and continuos with gates.
- Planned and deployed logging storage for 3TB logs storage with 40GB logs per day.
2018.10 - 2019.08.09, full-time. Trooper Shooter: Critical Assault FPS (3D mobile shooter) for Azur Interactive Games Limited
- Bootstrapped actor-based solution with WebSocket frontend for meta part of the game.
- Guided migration from OOP to DOD ECS-like design to increase performance of realtime part
- Coded realtime synchronization protocol and compression; convenient and fast serialization
- Improved coding of features using latest language features
- Used channels with cooperative multithreading and concurrent queue to implement HPC realtime game server
- Automated stress tests and proved each realtime commodity server thread can game 35+ concurrent users
- Automated distributed deployment
- Improved development and release velocity. Facilitated improvement of code organization at large, introduced full-stack low cost structured logging and vertical semantic namespacing, cross IDE builds
- Coded matchmaking and some battle logic.
- Integrated best practices into the game studio to prevent business losses due to security breaches
- Facilities migration from paper-based workflow to digital one with the proper hierarchy of work items.
- Learned from the flat cross-functional team of developers and designers of approx. 10 people in delivering game from Proof of Concept into Release.
- ASP.NET, networking, Orleans, Unity3D
2017.10 - 2018.10, full-time. Measurement data analyzer (engineering)
Windows desktop application to show and analyze measurement data from car sensors.
- Improved code practices and performance, reduced technical debt
- Made synchronous blocking mutable state components into asynchronous reactive nonblocking immutable
- Shared practices with the team about testing, process, collaboration, documentation.
- Report reviews of components for performance, usability, stability, concurrency, and scalability, reported in various forms
- Fixed bugs of in-memory data synchronization within engineering instruments and in the custom plugin system
- Worked with teams from Germany and visited them regularly. Worked hard to make all collaboration online and transparent
- Was in the stream of 5 developers, within 40 people project.
06.06.2015 - 31.08.2017, full-time. Legal eDiscovery server engine
- Developed asynchronous actor-like data-intensive persisted engine and intelligent multi-tenant distributed file system aimed for upload/ processing/production/analysis/search/review of millions of documents on custom cloud
- Planned, tasked and lead month-long features
- Improved intelligent multi-tenant distributed file system aimed for handling millions of documents
- Developed orchestration with error handling of event-driven services, HTTP API, billing, audit, reporting, query provider to NoSql database, reusable infrastructure components, asynchronous data- and work-flows
- Optimized system scaling, data ingestion and access performance on 20TB+ of indexed data
- Used several data storages(relational, document, files, queue, cache).
- Improved teams capability to produce better software faster by setting up practices of agile lean documentation and knowledge sharing
- Created malicious e-Discovery hardening data set
- Document and prototyped replacement of distributed lock-based flows into lock-free event-sourced flows for performance and consistency, disentangled cases where we could use eventual consistency and approximations, and were not
- Thought up, elaborated and managed prototyping of document relationships visualization presented to the customer
- Articulated several cross-team inefficiencies up to resolutions, helped the customer to improve skill-position fit of some employers
- Trained my writing English to be properly structured, clear and action inducing
- Worked within the distributed team of 30 developers
ASP.NET, SQL, ElasticSearch
2014.07-2015.01, full-time. Accounting and practice management software platform for mid and large law firms
- Maintained client-server application framework, which has technical part dated back to 2003 and domain model from 1990s
- Maintained custom database oriented IDE, custom ORM, XML based GUI
- Fixed issues in fault tolerant background task executions and notifications
2010.02-2014.06, full-time. Office add-ins suite and application framework for financial professionals, Eikon for Office
Windows software for linking data between documents, financial data charting tool, productivity tools integrated with Microsoft Office, the framework for an integrated suite of desktop applications used by distributed teams.
- I delivered and lead technical integration various products for financial professionals into cohesive integrated solution. Some parts of my works are open-sourced on GitHub.
- Engaged in deliver cross teams and cross technologies(native and managed) integration framework to get larger business value.
- Using deep understanding of technologies to deliver business results and enablers
- Improved knowledge sharing and collaboration in distributed teams
- Refactoring existing code into components with proper variability engineering
- Developed custom IPC and asynchronous modules systems
- Solved data, authentication, multiple login prevention, auto-upgrade on client.
- Made internal tools for productivity, profiling, optimizations and performance analysis.
- Debugged multithreaded and multiprocess issues.
- Effectively introduced TDD, DI, BDD, achieved near-zero bug development.
- Aggressively eliminated technical debt using modern code practices
- Used virtual machines to test in different setups and fix multiuser environments
- Tripped to France to do talks on the customer side
- Made internal tools for productivity, profiling, optimizations and performance analysis
- Worked in coordination with 50+ developers from several countries, started from small end-user functional team, become distributed framework team of changing size with many functional teams
- WPF, COM
2008.10-2010.06, part time. Music Information Retrieval, visualization and analysis
- Prototyped visualization to organizes music collection onto 2 dimensional scatter plot via PCA based on audio content processed by FFT and MIRToolbox.
Researched algorithms which understand music from audio content using Hierarchical Temporal Memory and classifies via KNN
With zero supervision, idea and whole implementation are mine.
- Matlab, Python
2008.07, 2009.07, internship. Time Lapse Microscopy Capture Tool, Institute of Physical Biology
- Developed Windows application for time-lapse microscopy during summer school
- Featured continual shooting of photos via a camera attached to the microscope, measuring photo quality, tuning camera settings, plotting entropy calculation, logging results
- Was under scientific guidance of 2 Ph.D. students
- Windows Forms, hardware
2008.08-10, part-time. Social network data analysis and visualization, Itransition
- Coded some server-side part to get data to and from database
- Worked with 3 junior developers and manager
2006.08-12, part time. Woodworking machine controller, Stroydetali Llc
Created industrial MS-DOS application connected to a woodworking machine.
Coded tools to edit/store/execute sawing plans, change sawing machine setup and monitor sawing process.
With lack of working 3rd party components, programmed configuration file format parser, custom system event loop, custom text window system with edit boxes/menus/labels/help, communication protocol with hardware LPT port.
Worked and communicated with microcontroller programmer.
- Pascal, hardware
2004.09-2005.03, part time. Graduates database
Created Windows application to input and report on graduate data.
- Created installer and help
- Got 2nd place on regional competition of school student’s software
2017.02-now, fun time. Micro web sites for professionals, personal businesses and relatives
2005-now. Structurally tagged 10000+ digital entities, did mind mapping.
2012-2019.10, Security and privacy
- Used security, anonymization, encryption, and open source to see the world from hacker and privacy-focused perspective, learned how pricy these tools are.
- Used deGoogled phone for one year and saw how ineffective a person is without a corporation.
- Using distributed networks to store and read data, and understood what is future of computing.
- Android, Open Source
2018.12-2019.06, fun-time. Hackatons
- Participated in several hackathons(including EaP Civil Society Hackaton in Georgia with maps), legal.
- Practiced team leading, architecture, business analysis, leadership and collaboration in extremely time-limited conditions
- Have won 1st Minsk Legal Tech Hackaton with prototype of solution to automatically recognize and highlight covenants clauses within contracts and put these into database.
- Have won Datathon legal track with application to crawl the internet for monopolies related cases and news with the ability to search over text.
2011.07-2013.01, fun time. Website security/forensics audit for PKI
- Used reverse engineering to find several holes in site security
- Proposed alternative implementation of services
- Provided scripts to business to do security evaluation continuously
- SQL, .NET
2010.04-2014.02, part time
- Finished Machine Learning, Model Thinking, Data Science, Functional Programming Principles in Scala on Coursera.
- Watched and worked through all lectures in course of Stanford Programming Paradigms (CS 107).
2005.09-2010.06, full time. Belarus State University, Faculty of Radiophysics and Computer Technologies
2008.04, 2008.11, part time. Software engineering courses at ScienceSoft .NET Framework course and Itransition Industrial software development course
- Learned .NET, testing, collaboration, web, databases, OOP, Design Patterns and web development topics
- Implemented tests tasks
- Prototyped web site for creating custom entities by administrators and adding exemplars of them by users(entities have had a variable number of fields with of different types)
- Prototyped web site to add/store/search tagged technical documents.
1994-2005. Gymnasium №1, Vileyka, Minsk region
- Specialization in physics and mathematics
- Employed dalton plan for self-education
- Participated in republic olympiad in Physics at 11th grade
- Knowledge management.
- Science, math, models, algorithms.
- English - fluent reading/writing technical texts, working spoken, B2/Upper intermediate.
- Russian, Belorussian - native. Меня зовут Лагода Дмитрий Александрович.
I have driver license type B. I was born in the 1988 year AD. I do yoga. Learning to cook simple and healthy food. I believe in openness, transparency, science.