Font size:      

Fyodor Kupolov CV

Personal

First Name: Fyodor
Last Name: Kupolov
Date/place of birth: September 10, 1981, Cherepovets, Russian Federation
Marital status: Married
Nationality: Russian
Mobile Phone: +375 29 6078646
E-mail: kupolov@gmail.com
Location: Belarus, Minsk

Objective

A position as a senior Java/JavaEE developer that lets me utilize my experience in designing and developing scalable and distributed applications.

Skills

Programming Languages and Technologies

Operating Systems

  • Windows 95/98/NT/2000/XP
  • Unix/Linux

Database Management Systems

  • Oracle 8, 9i, 10g
  • MS-SQL Server
  • PostgreSQL
  • DB2 Universal Database
  • Sybase SQL Anywhere 9.x
  • MySQL 4, 5
  • Apache Derby
  • HSQLDB
  • H2 Database
  • MS-Access
  • Firebird

Work Experience

Note
Several customer names, project URLs were omitted in order to prevent violation of agreements with customers. This information is available upon request.

March 2002 - present

Organization: [Name and URL available upon request]
Position: Senior Software Developer / Architect

Project: [Name and URL available upon request]

Contact- and time-management AJAX-based web application similar to Google Calendar. The appliation was developed for one of the largest German free mail provider and designed with scalability in mind.

Role: Team Lead / Architect

My responsibilities:

  • Design:
    • Persistence layer
    • AJAX and MVC-based presentation layer based on the Prototype framework. Caching mechanism.
    • DWR-based transport/remoting layer.
    • Import/Export module.
    • Spring-based business layer.
    • Authentication layer. Single-Sign-On module design/implementation.
  • Clustering (currently runs on 4 dual CPU machines).
  • Performance optimizations (server-side and client-side JavaScript).
  • Technical documentation: Project architecture, developer how-tos, code conventions

Environment:

  • Client: IE5.5+, Firefox 1.0+, Prototype, Rico, DWR 1.1, Rhino
  • Java SE 5.0, Servlet 2.4, Spring 2.0, ical4j, opencsv, Quartz, scriptella, Jakarta Commons (fileupload, IO, lang), JBoss WS
  • Appserver: JBoss 4 (Tomcat for development)
  • RDBMS: Oracle (HSQLDB for in-memory testing)
  • QA: jUnit, checkstyle, findbugs , cobertura, EMMA
  • IDE: Intellij IDEA 6 + Ant

Project Duration: August 2006 - Present

Project: [Name and URL available upon request]

Hosted Security Management System enabling service providers and companies with distributed networks to manage thousands of VPN/Firewall appliances from a central location.

Role: Team Lead / Architect

My responsibilities:

  • Persistence layer (CMP 2.0 with optimistic concurrency, SQL-based DAO for large resultsets and binary streams)
  • Appliance notification listener (HTTPS, Servlet 2.3, EJB 2.0)
  • Appliance communication transport architecture / development (HTTPS, HttpClient 2.0)
  • VPN-router emulator architecture / development (HttpClient 2.0, Servlet 2.3)
  • Authentication/Authorization Subsystem, PKI infrastructure (OpenSSL, JSSE)
  • Plug-in subsystem architecture / development
  • Project build system (Ant 1.6)
  • Business layer (EJB 2.0 Session Façade), Messaging subsystem (JMS 1.02+MDB) architecture / development
  • GUI Development (J2SE 1.4, Swing)
  • Client Console Smart Update architecture / development
  • JBoss Clustering, RDBMS Clustering (based on C-JDBC)
  • Technical documentation: Project architecture, developer how-tos, code conventions

Environment:

  • J2SE 5.0, JSSE
  • J2EE 1.4: EJB 2.1, Servlet 2.3, JMS 1.02
  • Jakarta HttpClient 2.0, OpenSSL
  • Appserver: WebLogic 8.1 (JBoss 4 secondary platform)
  • RDBMS: Sybase SQL Anywhere 9.0 (HSQLDB on JBoss)
  • jUnit, Checkstyle, Findbugs
  • IDE: Intellij IDEA 4.5-5.0 + Ant

Project Duration: September 2003 - Present

Project: [Name and URL available upon request]

Web-based system to manage the process of state assistance provision to the youth of Berlin.

Role: Technical Consultant

My responsibilities:

  • Solutions research
  • Critical bug fixes
  • Proof-of-concept prototyping

Environment:

  • J2SE 1.4
  • J2EE 1.3, EJB 2.0, Oracle TopLink, JAAS
  • Struts, JSP
  • Application server: OracleAS 10g
  • RDBMS: Oracle 9i
  • IDE: Intellij IDEA 4.5 + Ant, JDeveloper
  • HttpUnit, HtmlUnit, JMeter, Cactus, JUnit
  • Microsoft IE 4.01+, Netscape Navigator 4.73+

Project Duration: September 2004 - May 2005

Project: [Name and URL available upon request]

Web-based system for automating the real estate business and is capable of serving several thousands of customers at a time.

Role: Developer

My responsibilities:

  • Upgrading Legitimation subsystem (URL based policies, synchronization with menu)
  • Performance improvement (caching, refactoring, profiling), bugfixing
  • JBoss 3.x to 3.2.x migration (taglibs bugfixing, removing dependences on deprecated APIs, upgrading to JAXP)

Environment:

  • JAVA 2
  • EJB 1.1 (Legacy business layer - Session Façade + BMP entity beans) + EJB2.0 (CMP entity beans)
  • JSP
  • Appserver: JBoss 3.2.1
  • RDBMS: DB2 Universal Database 7.2
  • IDE: Intellij IDEA 3.0 + Ant
  • Microsoft IE 4.01+, Netscape Navigator 4.73+

Project Duration: June 2003 - August 2003

Project: [Name and URL available upon request]

A web-based tool for navigation, managing and printing of submissions.

Role: Developer

My responsibilities:

  • Implement addtional functionality (View/print submission functionality, additional categories and states support)
  • Bugfixing

Environment:

  • JAVA 2
  • XML (JAXP, DOM)
  • ANT, log4j
  • DB2 Universal Database 7.2
  • Tomcat 4 +Struts 1.1 (+Websphere 3.5 compatibility)
  • IDE: IntelliJ IDEA 3.03
  • IE 4.0+, NN 4.7+

Project Duration: April 2003 - June 2003

Project: [Name and URL available upon request]

Web-based application for computer-based insurance system.

Role: Developer

My responsibilities:

  • Open Product Interface (Web services based interaction API with external web applications, clustering support)
  • Administrative console and user workplace development
  • Document management system. File uploading, creating attachments for other application components, search system.
  • JBoss application server compatibility analysis.
  • Bugfixing / Refactoring

Environment:

  • JAVA 2
  • EJB 2.0
  • JSP / Servlets, Struts 1.02
  • Appserver: Weblogic 6,7
  • RDBMS: Oracle 9i
  • IDE: Intellij IDEA 3.0 + Ant
  • jUnit
  • Microsoft IE 5.5+, Netscape Navigator 7+

Project Duration: August 2002 - August 2003

Project: [Name and URL available upon request]

Converts data from business models into GDV binary file. Architecture and Developing of system for working with GDV format (insurance purposes).

Role: Developer

My responsibilities:

  • Code refactoring
  • Optimizations
  • Bugfixing
  • Project architecture

Environment:

  • JAVA 2
  • XML (JDOM).
  • ANT, JUnit
  • IDE: JBuilder, IntelliJ IDEA 3

Project Duration: February 2003 - April 2003

Note
GDV is an abbreviation of "Gesamtverband der Deutschen Versicherungswirtschaft"

Project: [Name and URL available upon request]

Converts GDV data to DOM model. Architecture and Developing of system for working with GDV format (insurance purposes).

Role: Developer

My responsibilities:

  • Database modeling
  • Code refactoring
  • Optimizations
  • Bugfixing
  • Migrating to Weblogic and Websphere platforms
  • Project architecture

Environment:

  • JAVA 2
  • JSP / Servlets, Struts + JAAS authentication/authorization
  • XML (DOM, XSLT for DOM2HTML transformations).
  • Appserver: Tomcat 4.0 (Also tested on Websphere and Weblogic)
  • IDE: JBuilder, IntelliJ IDEA + Ant
  • JUnit, Apache JMeter, OptimizeIt, JProfiler
  • IE 5.0+, NN 6.0+

Project Duration: May 2002 - January 2003

Education

September 1999 - June 2004

University: Belarusian State University of Informatics and Radioelectronics, Minsk, Belarus
Major: Computer Science
Graduation Thesis: Distributed Network Appliances Administration Tool Based on the Java 2 Platform Enterprise Edition (J2EE): 5 (excellent)

Illustrations:

  1. Administrator tasks
  2. Appliance notification processing function
  3. Project high level architecture
  4. Logical DB model

Review

Note
Only russian versions yet
Projects: Document indexing: 5 (excellent)
ASCII Art (Automatic BMP to TXT converter): 5 (excellent)
Generation of sequences with the given distribution law: 5 (excellent)
Distributed Task Processing System (Parallel RSA decoding): 5 (excellent)
Database File System: 5 (excellent)

Certificates

Logo Description Date
UML Brainbench Unified Modeling Language (UML) Certificate 14.11.2005
WebLogic 8.1 Brainbench BEA WebLogic Application Server 8.1 Certificate (Master Level) 14.11.2005
J2EE Brainbench Java 2 Platform Enterprise Edition (J2EE) Certificate 13.07.2004
Java 2 Brainbench Java 2 Certificate (Master Level) 13.07.2004
Java 2 Fundamentals Brainbench Java 2 Fundamentals Certificate (Master Level) 13.07.2004
Programming Concepts Brainbench Programming Concepts Certificate (Master Level) 12.07.2004
Java 2 - Non-GUI Brainbench Java 2 - Non-GUI Certificate (Master Level) 09.07.2004
JSP 1.2 Brainbench Java Server Pages (JSP 1.2) Certificate 04.07.2004
EJB 2.0 Fundamentals Brainbench EJB 2.0 Fundamentals Certificate (Master Level) 24.10.2003
Note

Foreign Languages

English: Fluent

Other Information

A Winner and participant of a wide range of programming contests:

A founder/committer of Scriptella ETL open source project.

Note
The spelling of my name and surname can be different because of transcription problems (Fyodor Kupolov, Fedar Kupalau, Theodore Kupolov)