CV
Senior software architect, Sun Certified Java professional and framework designer with over 14 years of experience in analysis, design, development and implementation of high load, scalable, distributed systems
Specialties:
Scalable architectures; large number of concurrent users; high load and high availability; cloud and grid computing; SQL/NoSQL databases HBase, Cassandra; large datasets, data crunching with Hadoop; Amazon Web Services; real-time application monitoring with SNMP and JMX; multithreading, reentrant, asynchronous servers; SOA and EDA programming models, RESTful architectures, messaging, mobile platforms, Blackberry, coaching
Summary
- Expertise and more than 10 years of experience in designing complex multithreaded n-tier solutions, server side software, scalability, performance and reliability aspects
- Extensive experience in building service oriented architectures and event-driven architectures
- Hands-on development experience building distributed internet-scale systems with millions of users
- Experience in load testing and stress testing methodology and tools
- Expertise in real-time applications and system monitoring
- About 10 years of experience in Object Oriented Programming & Object Oriented Design Concepts
- Good knowledge and practice of design patterns. Functional programming with Scala
- Deep understanding and years of experience in REST and Web Services, XML, UDDI, WSDL, SOAP
- Over 10 years of experience in Java and C# development
- Expert in J2SE/J2EE, in-depth understanding of concurrency and asynchronous programming. Various IoC frameworks (ex. Spring, Guice), various ORM frameworks (ex. Hibernate, iBatis), Servlets, EJB, distributed transactions, various web application frameworks (ex. SpringMVC, JavaServerFaces, Struts)
- Expertise and more than 10 years of experience in servlet containers (ex. Tomcat/Jetty), and J2EE containers (ex. WebSphere)
- Extensive client and server-side internet-based skills (HTML, DHTML, Java, PHP, JavaScript, XML, XSL and DTD/XML Schema) used to deploy functional, content-oriented web sites and manage server-side information content
- Expert in database concepts, large datasets, data warehouse solutions, years of experience with MySQL, Oracle, MS SQLServer, and SQL dialects (PL/SQL, Transact-SQL, SQL92) as the means to reference enterprise data on distributed DB servers in an n-tier client/server architecture
- Clearly understand business goals, software development life-cycle and quality, capable to pool together and lead a team, mentor, introduce new software development practices and set technology direction
- Able to clarify intricate technical solutions to business users, resulting in successful implementation. Masterfully handle multiple, simultaneous assignments and projects. Commitment to superior customer service through leadership, positive attitude, and hands-on teamwork
- Excellent interpersonal communication skills and analytical skills.
PROFESSIONAL EXPERIENCE:
Architect
Research in Motion, Canada, www.rim.com Mar 2010 – present
Architect, design and deployment of global content delivery platform for blackberry smart phones. Emphasis on mission critical, high performance systems, highly scalable distributed systems and highly reliable solutions.
Senior Software Architect
Viigo Inc, Canada, www.viigo.com Mar 2008 – Mar 2010
Architected and designed Viigo server side platform and public REST API
Viigo was a platform for delivering mobile content to hand held devices. It hosts a range of services that help to discover and access the best of the Internet’s content in an intuitive, fast, made-for-mobile format.
From the technical perspective the platform was about large number of concurrent users, large datasets, high load/high availability, cloud services and real-time application monitoring.
Architected and designed Viigo Ad server solution
The Viigo Ad Server has the ability to drive advertising campaigns on Viigo enabled hand held devices, which include Mobile Marketing Association (MMA) compliant banner ads and support several calls to action including click to mobile web, click to email, click to call and click to SMS
From the technical perspective the solution was about large number of concurrent users, high load/high availability, integration with third-party mobile ads providers, content and demographic ads targeting, statistics and audit, real-time monitoring.
I evolved architecture, enabled both systems to continue delivering value to its stakeholders. I supervised design quality of new features, taking into account the changing business environment and technology. I addressed reliability, security, scalability, performance, availability and internal design quality. I have the ability to grasp business processes, keeping in mind impact and requirements on systems and technology as well as opportunities to reduce complexity and optimize.
I was responsible for formulating and maintaining the overall, end-to-end architecture of the Viigo server system. My team worked alongside other departments within Viigo developing and evolving architecture of the Viigo system.
I communicated complex ideas; provided compelling technical leadership to a variety of individuals of differing skill/experience levels and championed new initiatives that span multiple teams.
I slashed equipment-related capital and operating expenditures; reduced provisioning time and costs, accelerated software development cycles; increased reusability of software components and overall extensibility of the solution; tremendously increased scalability and capacity of the server platform thus reducing per-user cost.
- Developed SOA/EDA strategies, infrastructure and frameworks
- Designed public REST API
- Led development, enforced code design principles
- Introduced code instrumentation; build automation, unit and acceptance testing code reviews and other formal techniques of SW development
Technologies Used: HBase/MS SQL Server, Java/C#/Scala, Spring/Sring.Net, ActiveMQ, Memcached, PHP, SNMP/JMX
Senior Consultant
Scotia Bank, Canada, www.scotiabank.com Jul 2007 – Mar 2008
Architected and designed UI tier for online banking solution. Coordinate implementation process.
- Provided architectural design and reference implementations
- Built error handling and logging framework
- Provided guidance and consulting in various areas of software design
Technologies Used: Java, JSF, Facelets, WebSphere, Spring, JSP, DHTML, JavaScript, AJAX, CSS, XML, Ant, JUnit
Senior Consultant
Rogers, Canada, www.rogers.com March 2007 – Jul 2007
Participated in design review, performance analysis and provided long term recommendations for streamlining an online order processing system.
- Led performance analysis, profiling and stress testing of enterprise-class software products
- Coordinated creation of automated build process
- Provided guidance and consulting in various areas of software design, managed implementation process
- Collaborated with the client’s teams in software development
Technologies Used: Java, EJB, Weblogic, Spring, Struts, Oracle, JSP, DHTML, JavaScript, AJAX, CSS, XML, Ant, JUnit
Team Leader/Senior Software Engineer
3Genius, Canada, www.moola.com Nov 2005 – March 2007
Project “Moola” is like a free super-jackpot game show, which allows anyone to become a millionaire on the internet, rather than watching others do so on TV. “Moola” is free and relies on sponsors to enable people to vie for serious amounts of cash and prizes. Sponsors give small amounts of money to millions of people, and then Moola allows those people to compete against one another so that individuals may win more or less, depending on how well they compete.
- Implemented SNMP real-time monitoring of logical and physical processes inside distributed cluster
- Architected and design system for continuous data mining and analysis of various business metrics
- Developed back-end business logic for “Moola” games, design communication protocol
- Built AI bots to play against humans
- Coordinated and lead overall game development process
- Developed data handling routines to manage huge amounts of archive data
Technologies Used: Java, OJB, Spring, Struts, MySQL, JSP, JSTL, DHTML,CSS, XML, SNMP, Flash integration, Ant, JUnit
Software Engineer
DevZeroG, United Kingdom – Ukraine, www.devzerog.com Nov 2004 – Jul 2005
Project “PrintSure PDF preflight portal” www.devzerog.com/products/printsure was to build a job and file receipt portal with workflow management, routing, client-side PDF pre-flight checking and intelligent messaging. Organizations using the PrintSure Intelligent Workflow portal either automatically distribute the desktop client software to their remote users via the Internet or provide them with a login to the on-line, browser-based pre-flight checking applet. The desktop software takes the configuration from the PrintSure server upon launch, optionally collects job information from the user via a form, performs an optional local pre-flight check and delivers assets from the user’s workstation over the internet to the PrintSure server.
- Implemented core business logic using Servlets and Struts framework
- Built front-end interface using JSP connected to Struts, HTML, JavaScript and custom Struts tags
- Designed and built backend notification and logging subsystem
- Built reusable XMP metadata storage application, both front and backend
- Designed and implemented Swing client application
- Implemented Mac OS compatibility library for ForkedIO
- Collaborated with a team of developers in extensive PDF parser/render library development
- Built PDF text rendering and ColorSpace conversion subsystems from scratch
- Analyzed PDF reference, researched, designed and implemented prepress preflight criteria
- Utilized elements of the Extreme Programming approach and revised code design
Technologies Used: Java, PostgeSQL, Hibernate, Struts, Axis, WebSphere, Oracle, SQLServer, custom tags, Servlets, JSP, JSTL, Swing, AWT, DHTML,CSS, XML, XSL, Velocity, Log4J, Ant, JUnit
Senior Software Engineer
Promptlink, USA – Ukraine www.promptlink.com Sep 2000 - Nov2004
Was in charge of developing all client-side parts for the enterprise projects “Cable Modem Diagnostics”, “Cable Modem Upgrade” and “Cable Plant Monitoring and Management” www.promptlink.com/products/cnms It’s a suite of software applications that support design, deployment, firmware upgrade and on-going real-time SNMP management of DOCSIS compatible cable networks.
- Coordinated and led UI design
- Architected, designed, and developed desktop clients using Swing
- Built front-end interface using Servlets, DHTML, XML, XSL
- Designed and implemented Java telnet server application, to serve terminal clients
- Designed and built WebServices interface to the cable plant management system
- Accomplished special plug-in framework to support legacy and state-of-the-art cable modems.
- Contributed to the architecture, design and implementation of the core business logic
- Explored and used Java Web Start and EJB technologies.
- Served as a mentor
Project «Maps and Locations» is a mapping solution like MapPoint or MapQuest.
- Researched and built translation module [US Street Address►latitude/longitude]
- Accomplished map rendering and user interface using C#
- Completed data import application from the legacy sources like US Census TIGER files
- Integrated MS MapPoint WebServices into the system based on .Net platform
Project “DOCSIS cable modem configurator” lets rapid modem firmware profiles creation for different internet packages.
- Analyzed DOCSIS 1.0/1.1 firmware reference documentation
- Architected, designed and implemented core business logic and built frontend web interface using JSP, Servlets and HTML
Project “Cable Gateway” is a solution to help small cable network providers effectively manage first-time users, reducing number of Tech Support calls.
- Architected, designed and accomplished Model-View-Controller engine for web-based application
- Built database layer for LDAP database
- Designed and built web UI using JSP, Servlets and HTML
Technologies Used: Java, Java Web Start, .NET, C#, WebServices, Axis, SNMP, DHTML, CSS, XML, XSL, UDDI, WSDL, SOAP, LDAP, JavaBeans, Servlets, JSP, Swing, Ant, JUnit
EDUCATION AND CERTIFICATION:
Master of Mathematical Sciences, with honors, Mathematics, National Polytechnic University of Ukraine, 2000
Bachelor of Mathematical Sciences, with honors, Systems Analysis and Control (Applied Mathematics), National Polytechnic University of Ukraine, 1998
Sun Certified Java Programmer SCJP 310-035
Brainbench Master Certification in: Java 2, Java 2-GUI, Java 2-Non-GUI, C#.NET, HTML 4.0, CSS2, Dynamic HTML, JavaScript, PHP5
Brainbench Certification in: .NET Framework, Unified Modeling Language (UML), SOAP