Java Developer2018 - PRESENTActive Global Specialised Caregivers
- Finished the application development, started by a third party: Bug fixes and small improvements. This task (the reason I was hired) was completed in a short time and since then I'm doing only occasional maintenance requests.
- Designed and developed a migration program from the old data system to a new one.
- Designed and developed a small application to help employees to pre-register for flights.
Senior Java Back-end Engineer2020 - 2021Foureyes Labs (via Toptal)
- Integrated NilRead viewer UI with the client application.
- Created mock WADO and QIDO protocol API implementation for testing.
- Configured NilRead to use mock protocol implementations.
Spring Developer2019 - 2020WebIntensive, Inc. (via Toptal)
Technologies: Amazon Web Services (AWS), Elasticsearch, AWS, MySQL, PostgreSQL, iBATIS, Spring, Java
- Implemented expert changes to the back-end to enhance user capabilities with the system.
- Implemented a sub-system that performs batch operations based on JMS messages.
- Enhanced the search experience of the end-user by improving metadata processing with an Elasticsearch engine.
Freelance Expert Java Back-end Developer2018 - 2019Paragon Creations Ltd. (via Toptal)
Technologies: REST, Microsoft SQL Server, Hibernate, JPA, Spring Boot, Java
- Rewrote a restaurant's menu management application for new technologies using Java and Spring.
- Integrated an external pricing API.
Java/Spring Developer2018 - 2018Candor PS (via Toptal)
Technologies: MySQL, Apache Tomcat, REST APIs, JSON Web Tokens (JWT), Hibernate, Spring, Java
- Secured a REST API with JWT.
- Integrated it with SendGrid to send emails.
Java Developer2017 - 2017Vorga, LLC (via Toptal)
Technologies: C#, Gradle, Java
- Supported a trading application written in Java—re-organizing, cleaning up, and refactoring the existing code.
- Added a Gradle build.
- Profiled different data input methodologies for the market data.
- Implemented an integration module with a trading technology application on C#.
Senior Architect2015 - 2017Luxoft
Technologies: Oracle, JBoss, Hibernate, Spring, Java
- Supported the sales automation system for an electronics retailer M-Video using Java.
- Led the transition to SOA from a monolithic application using Java, Spring, and Hibernate.
- Analyzed the performance issues and found the causes; produced recommendations to solve them.
- Redesigned integration points using Java, Spring Batch, and JMS.
- Coded the prototype—supporting a proposed solution using Java, Spring Boot, Spring Data, and Hibernate.
- Planned the work—distributing the tasks between team members and controlling task accomplishment.
Development Group Leader2013 - 2015R-Style (Moscow, Russia)
Technologies: Ext JS, IBM ODM, MyBatis, Guice, Jersey, Spring, Scala, Java
- Realized a business rule in IBM ODM.
- Designed and developed RESTful web services using Spring and Jersey.
- Designed and implemented an application installer on ezPack.
- Extended a load tool using Gatling to provide interactive load-changing capabilities.
- Added a RESTful interface adapter to IBM ODM.
- Implemented datacaching using Memcache.
Technical Lead2011 - 2013IT for Development and Stability, LLC (Moscow, Russia)
Technologies: Hibernate, Spring, Java
- Designed and developed a budget automatization application for government entities.
- Designed and developed the core of the system using Spring and Hibernate.
- Planned and implemented RESTful web services to support the front end.
- Distributed tasks between team members and controlled task accomplishment.
- Mentored junior team members, providing support and guidance.
Senior Systems Architect2005 - 2011Compuware Corporation
Technologies: EJB 3, TopLink, JMX, JSP, Java
- Designed and developed the core of the mission-critical, high availability system middleware for the General Motors OnStar vehicle communication using Java, EJB.
- Created the admin console that displayed the actual system configuration and state using Java and JMX.
- Built a test automation tool using Java and Swing.
- Developed the emulator of a vehicle communication layer using Java.
- Created a vehicle authentication and authorization module using Java.
- Built a module that prioritized requests and selected the appropriate connection type with fail-over strategies using Java.
- Led the efforts to cover code with JUnit test cases using Java and Emma.
Software Developer2003 - 2005Gordon Food Services
Technologies: Apache Struts, JSP, Java
- Developed a module to calculate sales commission using Java.
- Built an online reporting module for price maintenance application using Java, JSP, and Struts.
- Created a customer management online application using Java, JSP, and Struts.
- Developed a module for data conversion during a system migration to Java; using Java, SQL*Loade, Perl, JavaMail, and JavaFTP.
- Created a batch reporting module using Java, XSLT, FOP, and JavaMail.
Software Developer2002 - 2003Basis 100/CanDeal (Toronto, Canada)
Technologies: TIBCO, Enterprise Java Beans (EJB), Java
- Designed and developed a trade engine to perform RFQ-based trading of debt securities with fault tolerance and auditing of the trade activities; using Java and Tibco.
- Developed the logic to calculate the price of securities based on multiple data feeds using Java.
- Built a module to perform automated or manual market state control using Java.
- Designed and developed a liquidity provider simulator using Java.
- Supported a trader UI using Java and Swing.
Senior Software Engineer2000 - 2002Objective Edge, Inc. (Toronto, Canada)
Technologies: JavaMail, RMI, XSLT, XML, Java
- Created a component to convert structured data into XML format using a data descriptor; using Java.
- Developed a UI to write data descriptors, including debugger; using Java and Swing.
- Built a framework for a two-step JavaBean configuration—creating a template on the first step, hiding the complexity of the configuration and letting the business user create a fully initialized bean just by typing in values into an English sentence.
- Created an XSL extension to use a DB—uploading data to the DB during transformation and using DB query results.
- Developed an application to receive email messages and convert them to XML documents.
- Created a web-based application to view data from XML warehouse; using Java and JSP.