Andrey Shalitkin, Software Developer in Voronezh, Voronezh Oblast, Russia
Andrey Shalitkin

Software Developer in Voronezh, Voronezh Oblast, Russia

Member since August 5, 2015
Andrey is an IT specialist with solid experience in different business areas, mostly in the Java world. He has coded in Java, Groovy, JavaScript, and a bit in Python. He has been a developer, technical leader, and architect leading teams and coding personally. What he's looking for right now is high-tech, non-trivial projects where mathematical/algorithm skills a necessity.
Andrey is now available for hire


  • Aurea
    Java, Python, JavaScript, AWS
  • Luxfot UK
    Java, Groovy, JavaScript, AngularJS, Spring, Oracle RDBMS
  • Luxoft Russia
    Java, Spring, Fujitsu BPM, Oracle RDBMS, JSP, Servlets



Voronezh, Voronezh Oblast, Russia



Preferred Environment

Linux, IntelliJ IDEA, Git

The most amazing...

...thing I have developed is a Groovy framework giving almost full control of all aspects of the UI via back-end rules written in a functional manner.


  • Java Architect

    2015 - 2016
    • Successfully implemented a project of integration of BPM product with the monitoring system.
    • Made a significant contribution to the project of the product virtualization in the AWS cloud by creating a central logging mechanism.
    • Did code base analysis for a legacy code base and identified the most critical parts of the system that allowed to create efficient test coverage strategy; used Python for this project.
    Technologies: Java, Python, JavaScript, AWS
  • Technical Leader / Architect

    2013 - 2015
    Luxfot UK
    • Along with my colleagues, built a new WEB component based on Spring REST and AngularJS.
    • Implemented a Groovy-based validation framework that allowed us to control almost all UI behavior via rules invoked from the back-end.
    • Performed architectural refactoring to transform existing component from monolithic to SOA.
    • Led (technically) 5 distributed development teams working on financial regulatory requirements.
    • Ported reporting rules from AbInitio to IBPM Rules with a Java intermediary.
    Technologies: Java, Groovy, JavaScript, AngularJS, Spring, Oracle RDBMS
  • Leading Software Developer

    2010 - 2013
    Luxoft Russia
    • Developed an ETL-like tool to get IB clients data from external sources.
    • Participated in "small changes" project fixing a lot of bugs, doing minor functional changes, and a lot of refactoring in the existing Workflow tool for client onboarding.
    • Integrated multiple existing components via REST and WS within a new business process (implemented in IBM BPM) for a client account creation.
    Technologies: Java, Spring, Fujitsu BPM, Oracle RDBMS, JSP, Servlets
  • Software Developer

    2006 - 2010
    Siemens IT Solutions and Services
    • As part of a team, developed a communication system for the Siemens Buyside Marketplace. The biggest part was to integrate with third party solutions.
    • Developed a web application for JMS messages monitoring and troubleshooting.
    • Implemented documentation generation module based on UML for a MDA solution (open architecture ware).
    • Participated in the portlet development for a portal for a big communication company.
    Technologies: Java, Spring, JMS


  • Virtualization of an Existing Product (Development)

    The project virtualized an existing product in AWS with minimal changes to the product itself. We had to solve such problems as centralized logging, configuration updates, and to make each node autonomous.

  • Web Tool (Development)

    Led a team that created a new web tool. The purpose of the tool was to make the first engagement with the IB clients and monitor activities happening during the whole onboarding process.

  • Porting of Financial Regulatory rules (Development)

    Led a team that did reverse engineering of existing rules in Ab Initio and ported them to the IBM rules with a Java intermediary.

  • ETL Tool (Development)

    As a development team member, I participated in the project where we need to build a system loading IB (Investment Bank) client information from external sources, applied some validation, transformation and matching rules and saving the data into the MDM (Master Data Management) system

  • Architectural Refactoring (Development)

    I performed architectural refactoring to transform an existing monolithic component to SOA architecture

  • Write Tests That Matter: Tackle The Most Complex Code First (Publication)
    In today's world, code is expected to change as quickly as requirements do, and tests play an important role in making that possible. Many modern projects boast great test coverage, making them more resilient to regression issues. However, that is not true for all projects - especially some legacy projects which have little in the way of testing. In this article, Toptal Freelance Software Engineer Andrey Shalitkin discusses two metrics, coupling and cyclomatic complexity, that are important in identifying which portions of code to include in test coverage.


  • Languages

    Java, SQL, JavaScript, Groovy, Python
  • Frameworks

    Mockito, JUnit, AngularJS, Spring, JPA, PowerMock
  • Paradigms

    Agile, Functional Programming, Scrum
  • Libraries/APIs

    JDBC, Spring REST, Pandas, JMS
  • Tools

    Subversion (SVN), Apache Tomcat, Jira, Hudson, Git, Cucumber
  • Platforms

    Oracle, Amazon Web Services (AWS)
  • Storage

    NoSQL, MongoDB


  • PhD Degree in Computer Science
    2007 - 2011
    Voronezh State University - Voronezh, Russia
  • Master's Degree in Computer Science
    2002 - 2007
    Voronezh State University - Voronezh, Russia

To view more profiles

Join Toptal
Share it with others