← back to the blog


Curriculum Vitae - english version

Posted
on 2015-02-28

link do wersji polskiej

CURRICULUM VITAE

Aleksander Adamowski

Personal data

Birth date: August 19, 1978

Marital status: married

Address

aleksander.adamowski@gmail.com

http://olo.org.pl


 

Work experience

 

2014r. - ...

Facebook, Inc.

1 Hacker Way, Menlo Park, CA 94025, USA

Position:

Security Engineer

2010 - 2014

The PZU Group

ul. Jana Pawła II 24, Warszawa

Position:

Systems Architect

Accomplishments:

  • Carried through (as a leading technological and coordinatory role) an effective optmization project spanning a key front-end system, a key policy administration system and the integration interface between the aforementioned systems, enabling efficient handling of problematic business cases that deal with large data volumes.
  • Supported a successful supplier diversification project for a large financial system.
  • Devised a number of new internal standards and improved upon existing ones.
  • Introduced Git distributed version control system as an alternative to centralized SVN into the development process.

Duties:

  • Input into systems and solutions design.
  • Supervision of work results of external suppliers.
  • Discovery and evaluation of innovative technologies as part of the internal standardization process.
  • Supporting negotiations with external software development services suppliers within the scope of technical and architectural issues.
  • Architectural support of software development initiatives and projects. 
  • Development of internal software engineering standards and procedures.
  • Interventative/remediative Java/Java EE software development (project rescue of endangered software development projects).

2008 - 2010

First Data Poland

Al. Jerozolimskie 92, Warszawa

Position:

Senior Java Application Developer/Designer

Accomplishments:

  • Designed, implemented, tested, documented and supported the successful deployment of a cryptographic key distribution system involving advanced asymmetric and symmetric cryptography and integrating key company systems
  • Analysed and diagnosed a number of difficult problems with a vendor's Hardware Security Module API libraries, which involved among others manually patching native JNI .so object files using a hex editor to alter machine code contained in them
  • Adapted a SOA system based on BPEL and SOAP to clustered, active-active, replicated and load balanced environment while radically improving application's testability, repeatability of builds and quality of code
  • Supported company-wide LDAP directory deployment based on Oracle Internet Directory during the planning and design phase

Duties:

  • Design (UML) and development (Java, Perl, C) of payment processing systems (SOA architecture, Web services, WS-Security, BPEL orchestration) and related cryptography solutions (e.g. public key infrastructure and key distribution system)
  • Design, configuration and deployment of software development support infrastructure (SVN based software version control, Maven 2 based project build and reporting, continuous integration server, instant messaging and wiki for collaboration)
  • Advisory support in the design of company-wide LDAP-based authentication and authorization infrastructure
  • Performing internal software security reviews

1999 - 2008

Altkom Akademia S.A.
Intraco
ul. Stawki 2, Warszawa

Position:

IT trainer (since 1999)

Developer (since 2001)

Corporate systems administrator (since 2002)

Accomplishments:

  • Rearchitected company's core internal services and infrastructure: e-mail, DNS, CUPS printing, WWW, LDAP
  • Implemented numerous custom software add-ons for the company infrastructure, e.g.:
    • A system that appends standardized, templated footers to outgoing mail (HTML and plain text) that automatically fills in necessary sender's attributes from LDAP directory (e.g. mobile number, position, name)
    • A GUI application for managing user accounts in the LDAP directory
  • Implemented strict SELinux mandatory access control security policies on core company servers (DNS, mail relays, XEN zero domains)
  • Virtualized most of the servers providing core company services using XEN hypervisor technology and migrated to 64 bit architecture
  • Implemented an internal Certification Authority based on Dogtag Certificate System, customised and integrated it with company's LDAP directory
  • Implemented an effective spam filtering system and shared IMAP folders for users to report misclassified messages to
  • Performed several successful security audits for company's customers
  • Led dozens of courses in a wide range of competency areas (see below)

Duties:

  • Providing IT training (MS Office, PHP programming language, HTML hypertext documents description language, Linux system administration, IBM Tivoli Storage Manager administration)

  • Programming (Apache+PHP+MySQL and Java projects)

  • Administration of company's core corporate systems (mail system – 300 users, mainly IT staff; main WWW server; DNS infrastructure; corporate printing system at the main campus; other network services)

  • Performing consulting services in the areas of IT security and system administration to external customers

1998 – 1999

Daewoo Dacom Communications
Multimedia Room
ul. Wspólna 62, Warszawa

Position:

IT specialist

Duties:

  • Internal software consulting (Microsoft systems and office applications)

  • Technical and organizational supervision over the multimedia room

  • IT hardware servicing

  • Customer service

  • Leading IT training courses

 

Abilities (based on work experience)

Operating systems

Linux and BSD:

Corporate systems administrator level, assured by the Redhat Certified Engineer certificate; extensive experience in system administration, UNIX shell scripiting, software development (see below)

Modern MS Windows versions (2003, 2000, XP and older):

power user” level + entry-level administrator

Programming languages

Java

Deep knowledge (SCJP/OCPJ, Java Web Services certificates; experience with development of database web applications on the Tomcat server, J2EE on JBoss and Glassfish servers, Spring framework, Spring Web Services and Acegi Security, WS-Security using WSS4J, processing of XML documents, building multimedia applications equipped with graphical user interfaces; integrated environments - Eclipse, Netbeans).

JavaScript

Experienced in both server side Node.JS and client-side jQuery development.

PHP

Deep knowledge (experience with development of LDAP administration tools and a learning management system. Example project: ldap-gallery - PHP web application that implements a searchable address book and photo gallery based on an LDAP directory. I'm the project's founder and current maintainer.)

Perl

Deep knowledge (experience with developing large quantities of scripts the perform data migration and act as middleware in complex networking systems, administrative utilities with a graphical user interface, LDAP directory management, code security auditing etc.)
Example projects:
Gtk2::Net::LDAP::Widgets - GUI components library for developing client applications that use LDAP directories. The library is available from the CPAN archive. I'm the library's creator and current maintainer.
Tesseract-polish - the project aims to develop Polish language support data for Tesseract OCR. It features several Perl scripts for analysing text corpuses, generating dictionaries and verifying correctness of manual steps of the language support workflow.

Python

Good knowledge (example projects: the www.dcde.ru web site on Google App Engine; open-source project that covers a set of dynamic, LDAP-integrated mail rewriting filters for the Courier mail server:  http://code.google.com/p/courier-pythonfilters-ldap/. I'm the project's founder and current maintainer.)

C, C++

Good knowledge (experience with modification of server code on Linux/BSD platforms - for example the KrbLDAP initiative on GitHub)

Visual Basic

Good knowledge (experience with developing applications, performing training related to VBA and MS Access database programming)

Additional skills

organization of projects (team infrastructure, scheduling, reporting (Scrum development process), code conventions), general project and team management knowledge (a requirement for having passed the CISA exam)

administration and usage of code and configuration versioning systems - CVS, Subversion, GIT;

collaboration and bug tracking support systems - Bugzilla, Jira, Crucible, Trac, MediaWiki, Hudson CI

object oriented analysis and design - UML, Enterprise Architect, MS Visio

Databases

PostgreSQL

Extensive experience (application development, leading courses for server administrators)

MySQL

Extensive experience (application development, leading courses for web application programmers, reporting bugs to MySQL AB)

Oracle

Extensive experience (PL/SQL application development, performance analysis and tuning)

MS SQL Server

Minor experience (taking part in some projects that used Sql Server as RDBMS, wrote some functions in transact SQL)

Utility software

Graphics and multimedia applications

CorelDraw Corel PhotoPaint, Adobe Photoshop, The Gimp, Inkscape, Adobe After Effects and Premiere, Samplitude Studio, Metacreations Painter, Lightwave 3D, Autodesk 3D Studio, Macromedia Studio

Office applications

Microsoft Office

whole suite, trainer level, Microsoft Office User Specialist (MOUS) certificates , developer experience

Sun OpenOffice /  StarOffice

whole suite, practical professional and trainer experience, introductory developer experience

Applications of IT technology

Enterprise applications

  • LDAP directory services (OpenLDAP, Netscape Directory Server, Red Hat Directory Server, Fedora Directory Server) - advanced architecture, replication, access control rules, custom schema, non-standard applications

  • server virtualization (Xen, VMware)

  • internal communication (instant messaging, e-mail, groupware - eGroupWare, Zope)
  • interoperability of systems in a heterogeneous environment

  • databases
  • Java EE application servers (JBoss, Glassfish) - security, clustering, monitoring

Information systems security

  • public key infrastructure (PKI) – x.509 certificates, PKCS standards, deployment, configuration and administration of a Certificate Authority (CA - Netscape Certificate Management System, Redhat Certificate System, Dogtag Certificate System), automation of certificate processing using the OpenSSL library (http://www.openssl.org/) and the Perl and Bourne shell languages, programming security tokens and HSM modules using PKCS#11 API

  • mandatory access control system for Linux - NSA FLASK (Flux Advanced Security Kernel) / SELinux (http://www.nsa.gov/selinux/)

  • backup and archiving systems (IBM Tivoli Storage Manager)
  • systems security:

    • penetration testing (especially web application testing: SQL injections, shell injections, cross site scripting, cross site request forgery,session id prediction, authentication bypass attacks, information disclosure etc.; experience with broad toolset: Tamper Data, FireBug, WebScarab, BurpSuite, Paros Proxy, Pantera)

    • code security auditing, PCI DSS (Payment Card Industry Data Security Standard) conformance testing

    • preventive password quality assessment through password breaking

    • intrusion detection (IDS)

    • design of configuration of packet filters, NAT, IPSec, analysis of interactions between systems in a distributed environment etc.

  • passed the CISA exam (Certified Information Systems Auditor)

Local area networking

LAN services – file sharing, network printing, intranet communication

Internet

Standard public services – WWW, e-mail (Courier MTA, Netscape Messaging Server, Postfix, Exim), FTP, Instant Messaging (jabberd, jabberd2, ejabberd), numerous others (e.g. NTP)

Hardware

Serial ATA/SCSI/Fibre Channel arrays and tape libraries (server applications)

Foreign languages

English – fluent: 

  • SEFIC certificate level 4 (the highest available),
  • IELTS Academic test, score 8.0,
  • have provided training and IT consulting services to native speakers.

Russian  advanced.

Education

2007 - 2012: Polish Japanese Institute of Information Technology, master's studies

1999 - 2006: Polish Japanese Institute of Information Technology, graduate Computer Engineer

1993 - 1997: LVI High School, Warsaw; mathematics and physics profile

Certificates

2001-08-11: Chiltern Consultancy International “Train the Trainer” - 3-day training of trainer interpersonal skills (certificate no. TtT/11/08/01)

2003-07-15: LCCI Spoken English for Industry and Commerce level 4 no. 0030126154

2003-11-28: Redhat Certified Engineer (verification no. 809003914009421)

2008-05-05: JBoss Administrator Exam (EX336)

2010-04-15: NobleProg "Design Patterns - efficient code reusability" - identification code f701b0, certificate ID 10255

2010-10-29: Oracle University Course: "SOA: Architectural Concepts and Design Principles"

2011-01-13: Oracle Certified Professional, Java SE 6 Programmer - candidate ID SR7048133, registration number U00DUS50E4

2011-01-21: IBM 000-839: Rational Unified Process 7.0 - candidate ID SR7048133, registration number U07DUS5323

2011-12-14: Oracle 1Z0-862 Java Enterprise Edition 5 Web Services Developer Certified - candidate ID SR7048133, registration number 245651304

2012-08-24: Bottega IT Solutions Course: "Domain Driven Design"

2012-09-22: British Council International English Language Testing System (IELTS) exam - Academic module, score: 8.0

 

Publications

Linux Magazine Poland - issue no. 10 (2004-11): "Know-how: Automation of LDAP administration tasks with use of Net::LDAP Perl module"

Engineer thesis - “Automation of implementation of large scale IPSec-based VPN with Linux and ipsec-tools” - this involves algorithms and utility implementations in Perl that efficiently generate and set up pre shared keys and distribute configuration to all involved nodes.

Engineer thesis appendix - “Julius encryption algorithm” - a design and Java implementation of a simple symmetric encryption algorithm based on Feistel networks.

Master's thesis - “KrbLDAP - A new secure authentication concept” - a new approach to conceptually simple LDAP and Kerberos protocol integration, by transporting Kerberos v5 messages inside LDAP v3 extended operation messages. Complemented with a sample client and server implementations and an automated integration test to illustrate the idea.

About myself

Interests

Computer graphics, music, dance

Future plans

  • Professional development in the direction of architecting financial applications using OpenSource technologies; HA and HPC clusters, cryptographic and storage virtualization technologies

  • Family life