Dmitry Lakhin Steinstr. 70 81667 München Tel.: 089/ 43-74-90-17 Mobil.: 0177/ 42-34-738 E-Mail: [email protected] Persönliches __________________________________________________________________ Geburtsdatum 27.04.1976 Geburtsort Omsk, Russland Staatsangehörigkeit Russe Familienstand verheiratet Schulzeit __________________________________________________________________ 09/1983 - 06/1991 Gesamtschule, Omsk 09/1991 - 06/1993 Naturwissenschaftliche Schule, Omsk Studium __________________________________________________________________ 09/1993 - 06/1998 Mathematik Staatliche Universität, Omsk Abschluss: Diplom-Mathematiker mit Auszeichnung 09/1998 - 06/2001 Aspirantur Staatliche Universität, Omsk Spezialisierung: Geometrie und Topologie Berufstätigkeit _________________________________________________________________ 05/2008 – gegenwärtig Selbstständiger Software Architekt und Entwickler 01/2007 – 04/2008 Zooplus AG, Unterföhring Softwarearchitekt / Softwareentwickler Architektur, Design und Entwicklung 06/2006 – 11/2006 Wirecard Technologies AG, Grasbrunn Senior Developer Architektur, Design und Implementierung von WebAnwendungen 09/2001 - 05/2006 Cortal Consors S.A., Nürnberg Java- und J2EE-Entwickler Architektur, Design, Implementierung und Unterstützung von Web-Anwendungen 04/2000 - 08/2001 Infosib AG, Omsk, Russland Java- und Datenbank-Entwickler Programmierung von Web-Anwendungen Unterstützung von Datenbank-Applikationen Betreuung von Kunden Professionelle Zertifizierungen __________________________________________________________________ 01/2006 Sun Certified Enterprise Architect for J2EE Weitere Kenntnisse __________________________________________________________________ Sprachen: Deutsch (perfekt in Wort und Schrift) Englisch (sehr gut in Wort und Schrift) Russisch (Muttersprache) Bisherige Projekte und Berufserfahrung 08/2012 - 11/2012 Desktop-Tool zum Erstellen von digitalen Signaturen Firma: Privates Projekt (www.digisigner.com) Aufgabenstellung: Im Rahmen des Projektes wurde ein Desktop-Tool zum Erstellen von digitalen Signaturen in PDF-Dokumenten entwickelt. Das Tool basiert auf einem frei verfügbaren PDF-Viewer (ICEpdf) und ist in der Lage sichtbare und unsichtbare Signaturen zu erzeugen. Zum Signieren können Zertifikate (private Schlüssel) aus unterschiedlichen Keystores bezogen werden: Datei-Keystores (PKCS#12), Windows-Keystore, Apple Keychain, Smartcards (PKCS#11). Das Tool ist in Java entwickelt worden und hat Versionen für mehrere Plattformen. Die Entwicklung wurde im Alleingang gemacht. Tools/Software: Java 6, Swing, Eclipse, iText, Bouncy Castle, PKCS#12, PKCS#11 07/2011 – 07/2012 Entwicklung neuer Services für Friendscout24-Portal Rolle: Analytiker Firma: Friendscout24 GmbH Branche: Internet / Multimedia Aufgabenstellung: Erarbeitung von Architektur, Design und Implementierung eines hochverfügbaren Services für die Bewertung von Benutzerfotos (sehr beliebt unter Kunden) Erweiterung des bestehenden Zahlungs-System durch Einführung von neuer Zahlungsmethode (Überweisung) Überarbeitung der bestehenden Abo-Logik für die Einführung von neuen monatlichen Tarifen Implementierung von Profil-Aktivierung durch SMS Tools/Software: Ubuntu, JBoss-Cluster, Tomcat, Eclipse, EJB 3, Hibernate, Web Services, REST, JSON, Jersey, Play Framework, JMeter, PostgreSQL 01/2011 – 6/2011 Analytiker/Designer Rolle: Softwareentwickler Firma: Telefonica O2 Deutschland Branche: Telekommunikation Aufgabenstellung: Analyse von Business Anforderungen bei der Einführung von neuen Tarifen, Packs und Optionen Prüfung der Anforderungen auf Vollständigkeit, Widerspruchsfreiheit und auf technische und wirtschaftliche Realisierbarkeit Ermittlung der technischen Lösungen auf der Design-Ebene Erarbeitung und Abstimmung der Schnittstellen in einer äußerst komplizierten heterogenen Umgebung Erfassung der Entwicklungsaufgaben für Programmierer Tools/Software: Eclipse, Rational Software Architect, JEE, EJB, Web Services, ABAXX Portal 09/2008 – 12/2010 Web-Applikation zum Erfassen von Arbeitszeiten Rolle: Softwareentwickler Firma: Fraunhofer Gesellschaft Branche: Forschung Aufgabenstellung: Erweiterung des bestehenden mehrschichtigen verteilten Zeiterfassungssystems inklusive Frontend- und Backend-Funktionen (Aufgaben von PL/SQL- bis JavaScript-Coding über Java-Geschäftslogik und Hibernate-Zugriffe auf DB) Aufnahme von Anforderungen, Erarbeitung des Designs und unmittelbares Coding von neuen Anwendungsfällen Design und Implementierung (zu 80% allein) des Applets zur digitalen Signatur von Zeiterfassungsbögen mittels Smartcards Bedeutende Optimierung der Applikationsperformanz (bis zu 70% an einigen Anwendungsfällen) auf der Hibernate-Ebene Implementierung von Tests (DbUnit) und Mitarbeit an der Dokumentation Integration und Anpassung der Applikation an das interne ERP-System SIGMA Qualitätssicherungsaufgaben wie Durchführung von Code-Reviews, Kontrolle über Architektur und laufendes Refactoring Unterstützung bei Installation und Konfiguration von Web-, Portal- und ApplikationsServern (z.B. Authentifizierung mittels Smartcards) Erarbeitung der neuen Software-Infrastruktur für zukünftige Projekte (Spring oder EJB 3 als Alternative) Tools/Software: Java 5, JEE, Struts, JSP, Hibernate, Swing, iText, Smartcards, PKCS#11, JUnit, DbUnit, Tomcat, Sun One Application Server 8.x, Oracle, SQL, PL/SQL, Eclipse 05/2008 – 09/2008 Refactoring und Optimierung von Web-Applikationen und BatchJobs Rolle: Softwarearchitekt / Softwareentwickler Firma: Zooplus AG Branche: Online Shop Aufgabenstellung: Globales Refactoring von mehreren Web-Applikation zur Verbesserung der Software-Architektur Optimierung und Migration von alten Batch-Jobs auf neue Spring-basierte Struktur Erweiterung der CRM-Applikation mit neuen Features Verbesserung und Anpassung des Paketbau-Algorithmus wegen Einführung eines neuen Kartonage-Typs Coaching und Schulung von Mitarbeitern Tools/Software: Java 5, Spring, Hibernate, JSP/Servlets, Maven, JUnit, Resin, Oracle, IntelliJ IDEA 01/2008 – 05/2008 Order-Processing Modul auf Basis von BPM Rolle: Softwarearchitekt / Softwareentwickler Firma: Zooplus AG Branche: Online Shop Aufgabenstellung: Konzeption und Implementierung vom neuen Order-Processing Modul auf Basis von jBPM Definierung der Architektur unter besonderer Beachtung von Load Balancing und Failover Fähigkeiten (JBoss Cluster) Installation und Konfiguration vom JBoss Cluster mit verteiltem JMS Service Tools/Software: Java 5, JEE, jBPM, JMS, Spring, Spring Modules, Hibernate, JUnit, JBoss AS, JBoss Messaging, Oracle, Eclipse 11/2007 – 12/2007 Rolle: Firma: Branche: Anbindung eines neuen Payment Service Providers Softwarearchitekt / Softwareentwickler Zooplus AG Online Shop Aufgabenstellung: Komplette Verantwortung für die technische Seite der Integration mit dem Service Provider (inklusive technischer Gespräche, Termine usw.) Architektur, Design, Umsetzung und Deployment der Schnittstelle Verantwortung für den reibungslosen Lauf des Systems Tools/Software: Java 5, XML over HTTPS, Spring, Hibernate, JUnit, EasyMock, Resin, Oracle, IntelliJ IDEA 10/2007 – 11/2007 Neue Batch-Job Struktur Rolle: Softwarearchitekt / Softwareentwickler Firma: Zooplus AG Branche: Online Shop Aufgabenstellung: Architektur und Umsetzung einer neuen Batch-Job Struktur (basiert auf Spring) Kommunizierung der Architektur und Schulung von Mitarbeitern Tools/Software: Java 5, Spring, Hibernate, JUnit, EasyMock, Oracle, IntelliJ IDEA 01/2007 – 10/2007 Software-Architektur des Unternehmens Rolle: Softwarearchitekt / Softwareentwickler Firma: Zooplus AG Branche: Online Shop Aufgabenstellung: Neudefinierung und Gestaltung der Software-Architektur des Unternehmens mit mehreren laufenden Web-Shops, Admin-Applikationen und Batch-Jobs Evaluierung und Einführung von neuen Technologien und Tools (Hibernate, jBPM, TeamCity etc) Etablierung vom Test Driven Development (Test Infrastruktur, Continues Integration) Test-, Build- und Release-Management Definierung und Kommunizierung von Design- und Coding-Richtlinien Coaching und Schulung von Mitarbeitern Tools/Software: Java 5, JEE, Spring, Hibernate, TeamCity, Ant, Subversion, JUnit, EasyMock, Oracle, IntelliJ IDEA 06/2006 – 11/2006 Virtuelles Zahlungssystem Rolle: Senior Softwareentwickler Firma: Wirecard AG Branche: Payment Service Provider Aufgabenstellung: Konzept, Design, Programmierung und Präsentation des CRM Domain Models inklusive Datenbankdesign Implementierung von CRM Business Logik als Backend Services (Hibernate, Spring) Durchführung von Aufwandsschätzungen Implementierung von Unit- und Komponenten-Tests (TestNG) Durchführung von Code-Reviews Ausführliche Dokumentation inklusive Konzept, UML-Diagramme etc. Tools/Software: Java 5, Tapestry, Spring, Hibernate, Maven 2, TestNG, CruiseControl, Subversion, BEA Weblogic, Oracle, IntelliJ IDEA 05/2005 – 05/2006 Online Trading, Konto- und Depotverwaltung (für spanischen Markt) Rolle: Softwareentwickler Firma: Cortal Consors S.A. Branche: Online Bank und Discount Broker Aufgabenstellung: Design und Implementierung des Frontends auf Basis von ABAXX Portal Programmierung der Business Logik für Trading, Konto- und Depotverwaltung Anbindung an das interne Finanz Backend System Integration der Applikation ins Unternehmens-Portal Tools/Software: Java, J2EE, JSP, XSLT, ABAXX Portal, BEA Weblogic, Eclipse 01/2005 – 04/2005 Web-Frontend zum Verwalten von Fondssparplänen Rolle: Softwareentwickler Firma: Cortal Consors S.A. Branche: Online Bank und Discount Broker Aufgabenstellung: Festlegung einer neuen optimalen Architektur für die Applikation (UML) Design und Implementierung des Frontends auf Basis von ABAXX Portal Integration mit weiteren Web-Projekten im Rahmen des Unternehmens-Portals Tools/Software: Java, J2EE, JSP, UML, ABAXX Portal, BEA Weblogic, IntelliJ IDEA 10/2004 – 04/2005 Web-Applikation zum Verwalten von Fondssparplänen (privates Projekt) Rolle: Softwarearchitekt / Softwareentwickler Firma: Privates Projekt Aufgabenstellung: Erarbeitung der Architektur unter Verwendung von J2EE Design Patterns Implementierung des Backends mittels EJB Technologie (mit Hilfe von XDoclet) Entwicklung des Frontends und Implementierung des graphischen Interface (Struts) Projektierung und Implementierung der Web Services-Schnittstelle Entwicklung der optimalen Datenbankstruktur Testen der Anwendung mittels JUnit auf mehreren Application-Servern (BEA Weblogic und JBoss) Tools/Software: Java, J2EE, EJB 2.1, JSP, Web Services, UML, Struts, XDoclet, JUnit, BEA Weblogic, JBoss, Cloudscape, IntelliJ IDEA 01/2004 – 04/2005 Online Trading, Konto- und Depotverwaltung (für deutschen Markt) Rolle: Softwareentwickler Firma: Cortal Consors S.A. Branche: Online Bank und Discount Broker Aufgabenstellung: Design und Implementierung des Frontends auf Basis von ABAXX Portal Programmierung der Backend Logik für Trading, Konto- und Depotverwaltung Anbindung an das interne Finanz Backend System Integration ins Unternehmens-Portal Tools/Software: Java, J2EE, JSP, ABAXX Portal, BEA Weblogic, IntelliJ IDEA 01/2004 – 09/2004 Online Trading, Konto- und Depotverwaltung (für französischen Markt) Rolle: Softwareentwickler Firma: Cortal Consors S.A. Branche: Online Bank und Discount Broker Aufgabenstellung: Design und Implementierung des Frontends auf Basis von ABAXX Portal Programmierung der Backend Logik für Trading , Konto- und Depotverwaltung Anbindung an das interne Finanz Backend System Integration ins Unternehmens-Portal Tools/Software: Java, J2EE, JSP, XML, XSLT, ABAXX Portal, BEA Weblogic, IntelliJ IDEA 09/2001 – 12/2003 Web-Applikation zum Verwalten von Fondssparplänen Rolle: Softwareentwickler Firma: Cortal Consors S.A. Branche: Online Bank und Discount Broker Aufgabenstellung: Teilnahme an der Erarbeitung der Software-Architektur Implementierung des Frontends der Anwendung (Struts Framework) Programmierung von Backend Services und Operationen mit der Datenbank (JDBC) Entwicklung der XML-Kommunikation zwischen Frontend und Backend Implementierung der Batchverarbeitung von Kundenordern Systematische Erweiterung der Applikation Systemverantwortung für die Applikation Tools/Software: Java, J2EE, JSP, JDBC, XML, Struts, Tomcat, BEA Weblogic, Oracle, JBuilder 01/2001 – 08/2001 Web-Applikation zum Verwalten von Patientendaten Rolle: Softwareentwickler Firma: Städtisches Krankenhaus (Surgut / Russland) Branche: Medizin Aufgabenstellung: Entwicklung von Architektur und Design der Web-Applikation Programmierung der Business Logik mittels EJB Technologie Implementierung des Frontends der Anwendung (JSP) Tools/Software: Java, J2EE, UML, EJB, JSP, JDBC, XML, JBoss + Tomcat, Oracle, Forte for Java 04/2000 – 12/2000 Web-Applikation zum Verwalten vom Unternehmensregister Rolle: Softwareentwickler Firma: Stadtverwaltung von Surgut (Russland) Branche: Behörde Aufgabenstellung: Entwicklung von Architektur und Design der Web-Applikation Programmierung der Business Logik einschließlich die Interaktion mit der Datenbank (JDBC) Implementierung des graphischen Interface inklusive der Entwicklung von Java Applets Tools/Software: Java, J2EE, Servlets 2.2, JDBC, RMI, Java Applets, Swing, Apache + Tomcat, Oracle 7 Wichtigste Fachkenntnisse __________________________________________________________________________ Programmiersprachen Java (1.x – 6.0) JavaScript XML / XSL / HTML / CSS SQL und PL/SQL OO-Technologien OOAD (Objektorientierte Analyse und Objektorientiertes Design) Design Patterns (klassische GoF Patterns und J2EE Patterns) UML (1.x, 2.0) Java- und JEE-Technologien EJB JSP / Servlets JPA JMS JDBC JNDI JCA, JCE, JSSE, Java PKCS#11 Web Services (JAX-RPC, JAX-WS) RMI Applets AWT und Swing Application und Web Servers BEA Weblogic JBoss Sun One Application Server Resin Tomcat Apache Gängige Werkzeuge und Frameworks Hibernate, Spring, Spring MVC, JSF, Struts, iText, Apache Commons, JUnit, DbUnit, TestNG, EasyMock, JDOM, XDoclet, Log4j, Ant, Maven, TeamCity, CVS, Subversion XML-Technologien und Web Services XML / XSLT, XSD, DOM, SAX, JDOM, JAXP, XML Parsers, FOP, HTML Web Services, JAX-RPC, JAX-WS, JAX-WS RI (Metro), SOAP, WSDL Digitales Signieren und PKI Public Key Infrastruktur, JCA, JCE, PKCS#11 Datenbanken und Datenbank-Technologien Oracle SQL, PL/SQL, Stored Procedures, Triggers Java IDEs IntelliJ IDEA, Eclipse, JBuilder Software Produkte und Tools Enterprise Architect, MS-Office Betriebssysteme Windows XP / 2000 / NT 4.0 / 98 / 95 Unix (Solaris, Linux)