Maksym Govorischev
Total Page:16
File Type:pdf, Size:1020Kb
Maksym Govorischev E-mail : [email protected] Skills & Tools Programming and Scripting Languages: Java, Groovy, Scala Programming metodologies: OOP, Functional Programming, Design Patterns, REST Technologies and Frameworks: - Application development: Java SE 8 Spring Framework(Core, MVC, Security, Integration) Java EE 6 JPA/Hibernate - Database development: SQL NoSQL solutions - MongoDB, OrientDB, Cassandra - Frontent development: HTML, CSS (basic) Javascript Frameworks: JQuery, Knockout - Build tools: Gradle Maven Ant - Version Control Systems: Git SVN Project Experience Project: JUL, 2016 - OCT, 2016 Project Role: Senior Developer Description: Project's aim was essentially to create a microservices architecture blueprint, incorporating business agnostic integrations with various third-party Ecommerce, Social, IoT and Machine Learning solutions, orchestrating them into single coherent system and allowing a particular business to quickly build rich online experience with discussions, IoT support and Maksym Govorischev 1 recommendations engine, by just adding business specific services layer on top of accelerator. Participation: Played a Key developer role to implement integration with IoT platform (AWS IoT) and recommendation engine (Prediction IO), by building corresponding integration microservices. Tools: Maven, GitLab, SonarQube, Jenkins, Docker, PostgreSQL, Cassandra, Prediction IO Technologies: Java 8, Scala, Spring Boot, REST, Netflix Zuul, Netflix Eureka, Hystrix Project: Office Space Management Portal DEC, 2015 - FEB, 2016 Project Role: Architect Description: Office Space Management Portal is used for tracking workplace distribution between company offices worldwide, employees allocation management, storage and automatic update of visio schemes with office plans, employee relocation flow management both inside the office and internationally. Participation: Perform architecture design, development teams supervision. Establish development and PM processes, delivery pipelines, code quality measures. Tools: Maven, GitLab, SonarQube, Vagrant, Jenkins, Nginx, PostgreSQL Technologies: Java 8, Spring Framework, REST Project: Platform Infrastructure MAR, 2015 - OCT, 2016 Project Role: Infrastructure architect Description: Platform Infrastructure Team is responsible for establishing common development process and set of tools used throughout all development teams, maintaining and automating CI and deployment infrastructure, managing code quality control tools Participation: Participated in design and implementation of the platform that runs client's systems. Developed custom Gradle plugins to facilitate specific needs of client's development infrastructure. Implemented improvements to automated procedures for code quality management. Performed general control over architecture design in development teams. Tools: Gradle, SonarQube, Chef, Docker, Artifactory, Jenkins, Github Technologies: Java 7/8, Groovy, Ruby, Spring Framework Project: TaskManager MAR, 2013 - FEB, 2015 Project Role: Lead Developer Description: TaskProcessor is a subsystem on a remote work marketplace to perform bunches of similar simple tasks. Basic functionality is same as at Amazon Mechanical Turk, but in addition to that there's tasks routing capabilities between different stages with custom acceptance, rejection criterias, which allows building complex workflows. System is supposed to serve as abstract task processing engine for other client subsystems. Besides that, TaskProcessor was a pilot project utilizing client's new application platform based on approach of micro-services (Dropwizard with certain customizations) interacting with each other through command abstraction layer (Hystrix framework). Due to this, besides business related development there were activities related to adoption and improvement of new platform. Participation: API and server-side infrastructure design and development. Tools: IntellijIdea, AWS Services, PostgreSQL, Maven, Sonar, Git Technologies: Maksym Govorischev 2 JavaSE 6, Dropwizard, Thrift, Hystrix. Project: Issuebook DEC, 2012 - JUN, 2014 Project Role: Senior Developer Description: Issuebook is a system that performs fixed income trading deals management, including book building, allocation, billing & delivery etc. Involves sophisticated data validations on all stages, extensive consistency and audit support requirements. Participation: Technical refactoring of existing components of the system with ultimate target to decrease maintenance and support efforts, increase robustness etc. In particular, was responsible for transfering most of the validation routines to JSR-303 rails, development and build process simplifications, technical investigations related to adopting new data access framework. Tools: Jboss AS7, Oracle DBMS, Ant, CodeCollaborator, Sonar Technologies: JavaSE 7, Jersey, EJB 3.0, JSR-303 via HibernateValidator, Spring JDBC Project: CardApp AUG, 2011 - DEC, 2012 Project role: Lead Developer Description: CardApp is an application that simplifies storing and exchanging of person's business cards and company loyalty cards, and also provides rich facilities for card owners to communicate with card holders. It includes iOS and Android client apps and also server application. Most of the system features are location based, which requires additional server-side processing of client location information and handling numerous "something near something" queries. Also, system functionality does heavy use of push notifications to deliver various updates to clients(Apple APNS at the time of working on the project) Participation: Server-side infrastructure design and implementation. Participation in designing overall system architecture. Implementing geo-location services, push notifications service connector. Database: MySQL Tools: IntellijIDEA, Ant, Tomcat AS, AWS Services Technologies: JavaSE 6, Spring MVC, JPA/Hibernate, Java APNS API, JSON Project: Spend Planning DEC, 2011 - JUL, 2012 Project role: Senior Developer Description: Spend Planning is one of the parts of Oracle Operational Planning stack - Pre-packaged domain specific planning applications that enable users to evaluate current and past operating conditions, project future states and explore alternative approaches to arrive at an optimal plan of action. Spend Planning is a tool that provides scenario modeling and what-if analysis to optimize spend for the procurement team as well as for lines of business. Participation: Presentation layer logic implementation. Database: Oracle 11g Tools: Oracle JDeveloper, Oracle EPM stack, OBIEE, Oracle ADE Technologies: JavaSE/JavaEE, Web-services, JPA, JSF/ADF UI, Oracle ADF business components, SQL, BI, OLAP Project: Oracle Cube Builder JUN, 2009 - DEC, 2011 Maksym Govorischev 3 Project role: Developer Description: Project aim is to create component for synchronization between models of OBIEE and Essbase products in order to combine features of these products. Component should provide features for importing product specific metadata, creating platform independent representation, performing differential analysis etc. Participation: Implementation of client side logic, creating UI components, implementing mechanisms for interaction with server-side Database: Oracle 11g, Essbase Tools: Oracle JDeveloper, Oracle EPM stack, OBIEE, UDML Technologies: Java SE 6, Swing, XML, MaxL, Essbase JAPI Project: JAgent FEB, 2009 - MAY, 2009 Project role: Developer Description: Reengineering of Essbase agent application intended for easing of Essbase integration into Oracle product stack. Includes implementation of Essbase agent application on JEE platform, using Oracle Weblogic Server, Spring framework, JAX-WS, XML , preserving all features from previous version with improved session management, ODL logging, OPMN and Oracle enterprise manager integration. Participation: Creating documentation set for existing codebase in C, maintenance of development environment including Maven project, implementation of JNI adapters to work with existing native API, research & prototyping. Database: Essbase Tools: Eclipse Platform, Apache Maven2, Microsoft Visual Studio 2008, ANTLR, Oracle Weblogic 10g, SVN Technologies: JEE 5, JSE 6, Spring framework, JNI, JAX-WS, XML Education Automated collection and analysis of 2002 — 2008 economic information / Specialist National Technical University "Kharkiv Polytechnical Institute" Trainings & Certifications Sun Certified Java Programmer for Java 2 Standard Edition 6.0 Oracle Certified Expert, Java Platform, EE 6 Web Component Developer Maksym Govorischev 4.