Sergii Solomakha
email: ******.*********@*****.***
skype: zhelezoglo
SOFTWARE ENGINEER
Looking for relocation opportunities
SUMMARY
● Results oriented Software Engineer with more than 5 years of experience in enterprise software
development
● Comprehensive development approach using Functional and OO Programming, SOA, SaaS,
enterprise platforms and technologies for building reactive applications
● Applying Agile software development methodologies
● Requirements gathering, generating technical specifications, providing estimations and delivering
ready to use functionality.
TECHNICAL SKILLS
● Programming Languages: Java, Scala, JavaScript;
● Platforms, Libs, Frameworks: JPA, Hibernate, Spring(Core, MVC, Data), Play, Dropwizard;
JQuery, XML, SQL, PostgreSQL, JUnit, Mockito, ScalaTest;
● Concepts & Techniques: Imperative and Functional Programming, OOP, Patterns(GoF, PoEAA),
REST, TDD, Algorithms, Agile, Scrum;
● Misc. Tools: Maven, Jenkins, sbt, Git, SVN, UNIX, etc.
WORK EXPERIENCE
Sep 2014 – Present Software Engineer, self employed, Kyiv, Ukraine
(I have a license and registered as an entrepreneur at the state tax administration.)
● Developing a text analytics and recommendation service. Started with the idea of several features
like the recommendation of books for users depending on their language level and preferences
using both collaborative and content based approaches.
Technologies, frameworks, etc.: Scala, Play, Akka, sbt, MongoDB, JavaScript, ScalaTest, R
Jun 2013 – Aug 2014 Software Engineer, Luxoft Ltd., Kyiv, Ukraine
While working in big distributed teams using Scrum, CI(Bamboo), code reviews with pull requests(Stash),
TDD(ScalaTest, JUnit, Mockito) and in a tight cooperation with business analysts and QA engineers
using team collaboration tools(Jira, Confluence, Git) I took part in development of such projects:
● Huge scalable and standardized trading blotter for facilitating flow trading.
I designed, implemented and tested subsystems like components for integration with external
systems, converters between data interchange formats and message standards(JSON, Protobuf,
XML, FpML, FIX), etc. The whole thing was written in Scala employing concepts of reactive
programming and SOA. So, I learned Scala and Functional programming principles there.
Technologies, frameworks, etc.: Scala, Java, JMS, SBT, JUnit, ScalaTest, Mockito, XML, Apache
ZooKeeper, Oracle Coherence, Git;
● Upgraded bank legacy document management system by adding new APIs to the back end and
integrating it with a new front end. I set up an agile development process from scratch using
Scrum, CI(Jenkins), instant automated quality checks(SonarQube), TDD(JUnit, Mockito), etc.
Technologies, frameworks, etc.: J2EE, REST, GWT, JSON, Spring(MVC, IoC), JUnit, Guava,
Mockito, Jenkins, Maven.
Jul 2011 – Apr 2013 Java developer, Ciklum Ltd., Kyiv, Ukraine
Worked on an agile team using Scrum(iceScrum, Jira), pair programming, CI(Jenkins, Bamboo), TDD.
We redesigned and upgraded server components of the large gambling network which were in a heavy
production usage and made them more scalable and reliable. Several solutions we provided:
● Subsystems for disconnection analysis and addons for integration with regulators’ services
● Groovy scripts for automated Java code generation. They saved a huge amount of time for our
dev team by enabling automatization and avoiding human mistakes. The scripts generated for us
hundreds of source files for the service APIs according to the structure described by architects
and BAs
● Data interchange protocol converter for communication with online game servers. (Conversions
from custom string format to object domain, serialization deserialization to JSON, Protobuf.) We
designed and implemented this subsystem instead of an old one to enable higher throughput and
extensibility.
Technologies, frameworks, etc.: Java, Groovy, Protobuf, JSON(Gson), SLF4J, HTTP, Hibernate(ORM,
Validation), Guava(collections), Oracle RDBMS, Jenkins, Maven.
2008 – 2011 Freelance Java developer, Chernihiv Kyiv, Ukraine
Designed and implemented a bunch of different projects which were used in scientific applications.
● Java implementation of the Gaussian elimination algorithm for solving systems of linear equations
over an abstract and some specific(Complex, Real, Finite) fields
● Basic infrastructure for distributed calculations system. (E.g. for distributed brute force attacks
relying on known digests.)
Technologies, frameworks, etc.: Java, Swing, JDBC, MySQL, RMI, JSF
2006 – 2007 Software Engineer, Soft Industry Ltd., Chernihiv, Ukraine
Gained an experience of development and testing e-shopping services using JSP for the frontends and
Java for the backends which stored theirs data in PostgreSQL DBs.
● E-shop specialized at retail trade of mobile accounts top ups by means of electronic payments
systems
● E-shop for selling pin codes for electronic services. (IP telephony services, mobile telephony and
so on.)
Technologies, frameworks, etc.: P, HTML, CSS, XML, JDBC, SQL, PostgreSQL, log4j, Tomcat
JS
EDUCATION
2003 – 2008 Chernihiv State Technological University (CSTU), Chernihiv, Ukraine
Qualification: Bachelor of Science in Computer Engineering
Major: Computer Engineering
COURSES
2013 – Present Coursera – Free Online Courses From Top Universities
Functional Programming Principles in Scala – Nov 2013
The Data Scientist’s Toolbox – Jan 2015
R Programming – Jan 2015
2008 Attending the lectures “Trends and concepts in the software industry” at the Hasso Plattner
Institute for IT Systems Engineering, Potsdam, Germany
LANGUAGES
Ukrainian – Native or bilingual proficiency
Russian – Native or bilingual proficiency
English – Professional working proficiency