Sergiy Tkachuk. Curriculum vitae

Print friendly view Print friendly view

Sergiy Tkachuk

Location: Kyiv (Kiev), Ukraine
E-mail: sergtk.job {at}
Skype: sergtk.job
Most recent CV:

Job Experience

May 2011 -  present: Automated Industrial Machinery, Inc
Position: Lead Software Engineer and Researcher
Technologies, packages and tools: Xamarin (iOS, Android), Azure, C# (WPF/MVVM, LINQ to Objects, TLP), C++, Visual Studio, MSBuild, ADO.NET and Entity Framework, SQLite,, Gallio MbUnit, Redmine, Git, SVN, Interop (P/Invoke, C#, Win32), OpenCV/EmguCV, ITK, Wild Magic, WiX, log4net, log4cxx, Apache server, Jenkins, POV-Ray. Working with video cameras (implementation of set up, calibration, handling input stream)
Responsibilities: Design and development new project, perform algorithmic research and implement new algorithms. Organize, setup, support, improve, introduce new tools to development and project management environment, continuous integration
November 2010 -  April 2011 : XRFiles (
Position: Lead Software Engineer (freelance)
Technologies, packages and tools: Java related technologies (Spring, JPA, Hibernate, Velocity, H2, Jackson, Jersey, SLF4J, log4j, maven, JUnit, JAXB). Client Side (JavaScript, JQuery, JSON, HTML, CSS). REST, Cygwin, Assembla, TeamCity, Subversion.
Responsibilities: Development of server and client side logic, design model layer. Implementing billing via Recurly service. More info on page XRFiles project development.
Achievements: Significant progress in knowledge and performance when working with new technologies: from frequent consultancies to autonomous work.
December 2008 -  November 2010: Materialise
Position: Team Leader of Research Team
Responsibilities: Manage 5 - 7 researchers and developers Participation in research projects which are part of 3D Printing Digital CAD Kernel in roles of project manager and researcher. Projects initiation. Improvement of development processes. Participation in hiring process, technical interviewing candidates; performance reviews. Communication with internal customers: product teams and services. Projects follow up. Consultancy on existing algorithms.
Achievements: Team become much more customer and result oriented. Development processes became more strict defined and transparent which is especially important in the growing company.
November 2006 -  November 2008: Materialise
Position: Algorithm Researcher (Design and Implementation of Algorithms)
Technologies: Microsoft Visual C++, Boost, SVN, OpenMP, AQTime, Doxygen, UnitTest++
Responsibilities: Development of algorithms which are part of 3D Printing Digital CAD Kernel used by most products of Materialise. Algorithms relate to development efficient data structures, 3D computational geometry, numeric methods.
Achievements: Successful implementation of new algorithms and investigating, extending and improvement of existing ones. You may refer to Portfolio as Materialise Researcher for details.


2004 - 2007: Ph.D.student, Faculty of Cybernetics (Ph.D. expected 2007, ABD), Taras Shevchenko National University of Kyiv. You may refer to list of papers
1998 - 2004: Faculty of Cybernetics.Taras Shevchenko National University of Kyiv. Master's Degree in Informatics. Major: Information Technologies and Systems. Master's degree thesis subject: Research of hierarchical biological neural networks using methods of mathematical modeling and simulation.

Rewards and Honours

2009:   Java 2 Fundamentals Certified Master at
2008:   C++ Certified Master at
1998:   Bronze medallist of IOI'98 (International Olympiad in Informatics, 1998), Setubal, Portugal.
More complete list is available here

Small projects

FastSuntan (2012)
  • Hobby project
  • Application is to guide user through process of fast suntan measuring time and make sound alert
  • Techologies and libraries: iOS, Objective C
OneSpec (2011)
  • Application is to track which features described in specification are implemented and which not. This is performed by analyzing specification in html-format and javadoc-comments
  • Techologies and libraries: Java, Jericho, QDox, Maven plugin development, regular expressions
Prospector (2010)
  • Application to make search in LinkedIn convenient, via several LinkedIn accounts at once, by company names, positions, export data etc.
  • Techologies: Java, Spring, Velocity, Lucene, OAuth, XML (dom4j)
Application "Cadet". (2001-2002)
  • Application is used to automate process of preparation to examinations, look up and edit data about students.
  • Technologies: Borland Delphi, Interbase DBMS, Visual Basic for Applications.
  • Input data: information about cadets, marks of them, subjects etc.
  • Output data: ready to print MS Word and MS Excel documents of reports (examination sheets, summary sheets, appendixes to certificates etc.).
Application "Timetable of lessons" (2002) Application is used to automate processes of making out, editing, displaying, and generation of timetable of lessons. Was developed as Bachelor Degree thesis. Technologies: Java-applets, Java-servlets, JDBC, Tomcat, MySQL.
Small-scale database applications (2001-2002) PHP, MySQL.


Algorithm development:
  • Design and implementation of complex 3D algorithms on triangulated models.
  • Development of C++ template wrappers library which provides uniform interface for 3d triangle structures. This allows to implement complex algorithms using generic programming
  • Simulation of complex mathematical models (Some examples: simulation of part of olfactory bulb; parameter identification of crystals on physical measurement)
  • Large amount of algorithm competition problems, including more than 100 TopCoder contests
  • C++ (STL, Boost, MS Visual C++, Borland C++ Builder)
  • Java
  • Subversion (branching, merging, design structure of repository)
  • PHP, HTML, JavaScript, CSS
  • Continuous Integration servers (TeamCity, CruiseControl).
  • XML (DOM, DTD, XML Schema)
  • UML - beginner's level
  • MS SQL - beginner's level
  • C# - beginner's level
  • Borland Delphi
  • Assembler (x86)
  • OpenGL - beginner's level
Operation systems: Windows, Mac OS X, iOS, Android, Linux (beginner's level)


Ukrainian, Russian - native speaker. English: Upper intermediate


You may find more than 15 recommendations in my LinkedIn profile:
Last update: 1 August 2019

Comments are closed.