Enterprise Architect - Software Resume
Seattle, WA
OBJECTIVE
- Help a company that tries to make a difference in the world.
SUMMARY
- Have demonstrated ability to provide innovative solutions to difficult business and software problems. Successfully delivered several big projects and numerous small ones.
- Open minded. A recognized problem - solver, able to meet challenging goals, good listener . Have innovative ideas and the courage to promote and use them.
- Able to uncover unmet and unarticulated needs and deliver solutions which provide immediate relief while not compromising long-term maintainability and extensibility.
- Experienced with productive Agile software development methodologies, and complement them with relentless pursuit of grand vision.
- Software design: Formal modeling with UML, ERD and informal modeling. Strong proponent of ‘Literate Programming’ coding style;
- Grid/Cloud computing and Service oriented architecture (SOA): experienced with highly scalable data and computing grid solutions as well as more traditional service implementations;
- Data storage and Data Modeling: RDBMS design and development that ranges from MySQL to ORACLE; NoSQL solutions: MongoDB, GemFire, Hadoop, Cassandra, etc.
- Web development: template based and component oriented frameworks, Ajax or not;
- Project life-cycle support: building - testing - successful deployments;
- Languages and APIs: Multilingual - even I favor statically typed languages I am not afraid of dynamically typed languages and scripting where needed;
- Technologies and paradigms: Object Oriented Programming, Aspect Oriented Programming - AOP, Asynchronous systems, Message Oriented Middleware, MapReduce, parallel processing, Functional Programming;
- Enterprise frameworks: all the usual suspects in the Java land plus Scala and Akka;
- OS: Unix-s and OS X are my favorites, worked with OS/390 (Mainframe) and Windows
TECHNICAL SKILLS
Software design: Domain Driven Design, ERD modeling, well versed in UML notation, experienced in multi-platform development and application integration. MagicDraw, "Agile” modeling techniques, Borland Together Architect.
Service oriented architecture (SOA) and Grid (Cloud) Technologies: experienced with data and computing grid solutions GigaSpaces, GemFire, ZooKeeper, Hadoop, Hive, Pig, Amazon EC2 and S3, GridGain, Terracotta as well as traditional service implementations - REST, SOAP, and Java based services (RMI, HTTPRemoting, etc.);
Data Storage and Data Modeling: Expert level knowledge of DB design (ErWin, DeZign, and others) and development, experienced with major RDBMS servers ORACLE, DB2, MSSQL, PostgreSQL, MySQL, Hibernate, iBatis, JDO
NoSQL solutions: MongoDB, GemFire, Cassandra
Enterprise frameworks: JEE/J2EE, Web Services (REST, SOAP, WSDL, etc.), CORBA, GigaSpaces, Coherence, GridGain, Single-Sign-On solutions ( CAS, SiteMinder )
Project life-cycle support: make, Ant, Maven, CVS, Subversion, Perforce, Git, Cruise Control, XDoclet, Unit testing, The Grinder Web testing, Selenium.
Web development: AngularJS, JQuery, Struts, Wicket, Tapestry, SEO optimized solutions and productivity oriented solutions.
Languages and APIs: Java, Groovy, Scala, SQL, JavaScript, ActionScript (Flex, Flash), XML/XSLT/Xpath, Spring, EJB, JSP/Servlet/Taglib, JMS, JAAS, JCE, JDBC, JDO, Swing, Java Web Start, IDL, CORBA, RMI, JNDI, JavaMail, JavaCC, SNMP, etc.
Scripting: Shell, awk, sed, Jython, make, Ant
Tools: and applications: Akka, Scalatra, JBoss, Weblogic, Apache, Tomcat, Jetty, OpenLDAP, IntelliJ-IDEA, NetBeans, Eclipse, Flex Builder, Visibroker, Axis, Struts, Tiles, JSTL, JSF, Wicket, Spring, AspectJ.
PROFESSIONAL EXPERIENCE
Enterprise Architect - software
Confidential, Seattle, WA
Responsibilities:
- I joined this company while it was Cobalt. Stayed through acquisition by ADP when it became part of ADP Dealer Services division and helped with systems integration, implementation of Single Sign On solution, API gateway and security, introduction and implementation of NoSQL solutions for Business Intelligence and Inventory Management.
- Later helped transformation of Dealer Services division into standalone company Confidential .
- Work development teams on-shore and off-shore, travel to India development centers to spread knowledge and speed up adoption of data and computing grid solutions.
- Provide software architecture and implementation guidance, jumpstart projects by writing code to deliver core and tricky functionality or by creating end-to-end prototypes.
- Work on integration contract API definitions inside company and with external partners, oversee compliance of services and projects inside company with strategic business and technology goals.
- Oversee architecture and implementation of Common Services to ensure high performance, resilience and smooth operations in geo-distributed setup (multi data center active-active).
- Responsible for technology innovations and process improvements - on the technology front pioneered adoption of grid- computing solutions in the company before “cloud hype” started: architected and guided the first implementation of data and computing grid solution in the company.
- Was instrumental to implement OAuth security company wide and implement Nginx based gateway with dynamic service provisioning, routing, and protection. Working across teams and divisions to create unified authorization framework.
- Constantly work as liaison between business and technology, worked to establish company wide EA group maintained master domain model.
- Evaluate partners and vendors. Work with vendors to ensure that their technologies work as promised, collaborate on feature implementations (down to the code level). Work with partners to enable automated integration and eliminate data staleness and high maintenance processes.
- Continuously work to reduce overall complexity of in-house developed codebase by: streamlining architecture, aligning architecture with strategic business initiatives, replacing sub-optimal solutions with widely used in industry libraries and frameworks.
- Helped Cobalt to create mobile product offerings for automotive dealerships.
Founder
Confidential, Seattle, WA
Responsibilities:
- Company seeks to create global marketplace for motorcycle travel by bringing proven geo location based search and social media features to the world of motorcycle travel. Also enabling ‘shared' economy by enabling individuals to ‘swaps' or rent motorcycles. Developing this with AngularJS + Wicket UI, Scala+Scalatra on server side, and MongoDB for storage.
- Helped adoption of Open Source software stacks in enterprise. Supported adoption of Hibernate ORM by corporate clients, provided SASH (Struts -Axis -Spring - Hibernate) based reference implementation of application suite that followed Sun’s Adventure Builder blueprint application architecture but enabled better development productivity and performance. Helped Certification team to build and tune Java applications and testing frameworks. Helped resolving issues related to portability of SASH stack across major Java Application servers and databases. Made comparative analysis of web application frameworks: Struts + Tiles, Struts + SiteMesh, JSF, and Tapestry. Published several articles on employer's site, delivered online and off-line webinars.
- Taught half-day class at SDExpo West 06 on using Open Source Java frameworks as robust basis for corporate projects of any size.
- Worked on integrating search engine and graph processing algorithms into company's services.
Confidential, Overland Park, KS
Systems Architect/developer
Responsibilities:
- Joined Integrated Corporate Solutions as employee and continued to work on Risk Management software project. Although lion’s share of my time was dedicated to the “Risktool Suite” I also worked as hands-on architect/developer for several smaller successfully delivered projects. One of them was a project for a nationally known education institution that was completed to an incredibly tight deadline, but without a rush. The product has exceeded all the client expectations and surpassed competing solution in the usability and the number of useful features.
- I also helped preparing company’s response on RFP from one of top 10 companies in Fortune 500 list. Have developed accompanying proof-of-concept implementation that helped the proposal to win the tough competition.
- Responsible for design and implementation of a Risk Management software project, which is promoted by world biggest insurance provider and used by hundreds small and big US companies. I trained team to use productivity boosting frameworks and Agile techniques that allowed rapid development of Phase One and moving to limited production stage. The system aims to handle data for 20,000-50,000 companies (1 - 30 users per company). Technology wise it is a full-blown J2EE application suite designed for horizontal scalability. The system employs healthy mix of Open Source and commercial products that allows significant cost reduction for development and deployment. QA included JUnit test cases and The Grinder Jython scripts for full acceptance and performance testing.
- Helped developing another project that used ORACLE RDBMS backend and integrated legacy Lotus Notes application with new ORACLE based system.
consultant
Confidential, Kansas City, KS
Responsibilities:
- Worked as assistant of a chief architect and helped designing new generation of company’s IT infrastructure.
- Provided solutions and "proof of concept" applications, which demonstrated abilities of J2EE stack of technologies and their suitability for company’s IT goals. Provided management with build vs. buy estimations.
- Worked as a mentor for less skilled developers and taught them how apply software development patterns and frameworks ( MVC, persistence, etc. ).
- Have exposed several PeopleSoft Component Interfaces as Web Services (SOAP / WSDL) for simpler integration with legacy systems.
- Replaced CGI based reporting with XML/XSLT based lightweight reporting solution for accessing ORACLE RDBMS and made it compatible with existing applications.
- In the same time I did recommend vendor extensions and productivity tools when they give significant advantages and boost productivity.
- Helped balancing J2EE conformance and portability between target application servers (WebLogic, JRun4, iPlanet 6.5) with vendor productivity extensions.
Senior Systems Analyst/developer
Confidential, Kansas City, MO
Responsibilities:
- Re-architected and implemented a new version of metadata management and code generation system. Analyzed requirements and implemented information systems enhancements. Optimal architecture allowed fulfilling new requirements and used just 21 KLOC instead of 178 KLOC for old one. Created J2EE based implementation of a department wide time tracking application that took advantages of JavaWebStart Zero Client Administration capabilities. Made several innovative projects with using EJB, CORBA, and SOAP. Worked on improvements in department development, build, and testing processes.
- Re-architected and implemented new universal Java to Mainframe procedures connector via MQSeries, which was 7 times faster than the replaced one. Developed JSPs/Servlets for company wide intranet site, which used XML data feed and has used XSLT transformation with Cocoon framework to provide consistent look and feel for the site. Developed custom LDAP based authentication solution for the site. Supported production WEB servers and fixed performance/stability problems in server side JavaScript code. Worked with Informix RDBMS backend.
- Worked for Astral Point Communication and have ported network switch monitoring and management application from Win/MSAccess to Sun Solaris/ORACLE. Wrote installation scripts (Unix Shell) and fixed portability problems in Java and SQL code, externalized operation system and database dependent data into configuration files. Developed a driver for a new type of optical network cards.
- Was involved in the development of Payroll Automation System for Central Bank of Russia (CORBA, HP-Unix, ORACLE, C++, Java). Designed new DB schema for payroll calculation subsystem. Documented user requirements and application design with Rational Rose in UML. Developed Swing based UI client layer to replace IFC based one.
- Created database and application design for a new decentralized trading and planning system with loosely coupled operational nodes. Managed small team. Supported current system and made numerous improvements including SQL fine-tuning and partial database redesign. The improvements gave up to 5 times performance boost for the existing system and enabled smooth data migration.
Project lead
Confidential
Responsibilities:
- Worked on porting of a large scale ERP system from SCO-Unix/Unify 5 /C /Shell to ORACLE/Java platform. Consolidated project documentation for existing system via web server and ORACLE DESIGNER 2000. Created several proof of concepts for new version of the system with Java.
- Started as a developer and later started designing and developing ERP+CRM system for the company with using client/server architecture. Integrated the system with 3rd party general ledger application. Was promoted to a project lead position. Managed 7 subordinates. As a systems architect I have designed second version of the system and supervised its implementation. Participated in DB design for a call-center project and supervised the project. Integrated customer service and call center systems. Was promoted to director of IT department.
- Windows development experience in several companies with using Delphi, C, MSAccess
- Technologies I use and know very well, alongside with obligatory list of keywords to get recognized by scanning software.