Curriculum Vitae
Wojtek Nowak
Wojtek Nowak
Wojtek
Andruszków
Date of birth:
Gender:
Nationality:
Address:
E-mail:
Phone:
Education :
October 2002 - June 2006
(5 years studies graduated
in 4 years)
31 July 1981
Male
Polish (EU Citizen – no work restrictions)
London-
Master of Management of Finance System, Wroclaw University of Technology
Poland, Faculty of Computer Science and Management
specialization: Management of Finance System
October 2000 - June 2005
Master of Computer Science , Wroclaw University of Technology Poland
Faculty of Electronics,
Field of study: Computer Science (graduated with grade A)
specialization: Data Processing System Engineering
June 1996 - June 2000
Jozef Maksymilian Ossolinski High School graduated with A grades.
Summary:
• Over 11 years of experience within JAVA technologies
• 9 years experience of financial systems gained on the second faculty and in previous jobs
• Participated in three Startup projects
• Knowledge about derivatives and other financial instruments
• Experience in full SDLC, TDD, DDD, BDD, Continuous Integration, Agile – Scrum, XP
• Sun Certified Java Programmer
• Experience in SOA architecture (SOAP and JSON based Web Services, JMS, Spring-Integration)
• Professional experience in financial, eCommerce and health domains
• Strong understanding of Java/JEE design patterns
• Master degree in two faculties: Computer Science and Finance
Technical skills:
JDK, J2EE technologies, Spring, Spring Integration, Java Multi-threading, Hibernate, JPA, Servlets, JSP,
other
JDBC, JAXB, XSLT, Apache POI, Apache FOP, iText, log4J, Web Services
(XFire, Axis, CXF), JSF, Portlets, IceFaces, RichFaces, JSP, RMI, Maven, Ant,
Jess, JBOSS, Tomcat, Liferay, AspectJ, XDoclet, JSoup, GWT, dom4j, Acegi,
Swing, JCAPS, ActiveMQ, WebSphere MQ, HTML5, CSS, VTD-XML, JSON,
Mobile web (Bootstrap), 29 West, Tibco EMS, GUAVA, Apache Thrift.
Programming languages:
JAVA, JavaScript, Java Android, PHP, C++, bash
Coding tools:
Checkstyle, PMD, JUnit, HTMLUnit, EasyMock, Selenium, JProfiler, JMeter,
SVN, Jira, Confluence, Netbeans, Eclipse, Luntbuilt, CruiseControl, Hudson,
Sonar, GIT, GitHub, GitLab
Databases:
SQL Server, Oracle, Sybase, MySql, HSQLDB, MongoDB, Cassandra, Neo4j,
Redis
Development,
methodologies:
OO development, AGILE, XP, Object Orientated Analysis (UML), design
patterns, Domain Driven Design, TDD, BDD, Continuous Integration, SOA
OS and server technologies:
Unix/Linux, Windows, Dos, LDAP
Work Experience:
December 2013 – present (Contract)
Role: Senior JAVA developer
UBS Investment Bank, London
I've joined the team which is responsible for developing project called NEO. UBS Neo is a new, completely
integrated way of accessing the full value of UBS Investment Bank products by browser. It allows clients to get
the most relevant information such as market data, sales and trading and etc. It provides also tools for trading and
collaborating with leaders across asset classes.
My role in the project was designing and developing internal messaging application. I was responsible for
preparing archtiecture for RESTful API. I was also involved in developing onboarding and etitlements system
using Neo4J and Cassandra DB and sharing application. Whole NEO platform is designed in Microservices
architecture using 29 West, REST, TIBCO EMS as a messaging services.
I was also involved in other project called Deploy. It is UBS strategic platform for releases management and
deployments of applications. My role over there was mainly on the server side but I was also developing some
client side functionalities using Javascript and node.js.
Responsibilities:
Responsible for designing architecture of messaging platform
Responsible for code quality
Development of messaging platform for NEO e-comerce application
Creating Big Data model in Cassandra DB
Preparing and participating in technical interviews for candidates
Creating bash scripts for integration process,
Involved in the full software lifecycle including requirements gathering, design, implementation,
creating documentation, consulting, testing and system deployment,
Performance optimization,
Developing components on server side and client side
Used technologies: Java 1.7, Spring 4, Spring Integration, JDBC, Oracle DB, 29 West, TIBCO EMS, JUnit,
Maven, SQL, TeamCity, GIT, Git Hub, bash, Linux, Redis, Big Data, Cassandra, Nexus, Neo4j, Grunt, Node.js,
Javascript, RequireJS, GemFire, Hibernate, MyBatis
May 2012 - 15 November 2013 (contract)
Honaro
Role: Senior JAVA developer, Technical Lead (shareholder)
This is the web based social CRM system design in RESTful architecture to handle high volume of transactions.
It helps to promote companies in the Internet. The main functionalities are: adding products, portfolio, company
description, opinions, galleries, searching companies on map and etc.
The part of the project was also application used for web crawling and web data extracting. I wrote this
application in JAVA using multithreading environment. The data grabbing process is realized by XPATH or
regular expressions. The application is very flexible and can be used for any domain model. The object mapping
process can be done using annotations or XML files. There are different method use to grab the data, you can
specify the area or page pattern in which data are stored. In configuration files you can specify the number of
threads used in application, pattern of pages included in search process and pattern of parsed pages. The
application is built using Spring framework and hibernate.
Responsibilities:
Responsible for code quality – code reviews, code coverage, checkstyle
Creating Test Driven Development and Continuous Integration Environment
Designing and development of web crawler and web data extractor using JAVA and multithreading
environment
Integration with social media platforms such as facebook, google+ and twitter.
Implementing google-like calendar with recursive events
Designing database conceptual model
Advising in technologies
Creating lightweight MVC framework in PHP language
Development of framework components like: exception handling, Authorization, Data Validator,
Database Manager, Data Pagination, logging, Multilanguage support and etc.
XSS and SQL injection attacks protection
SEO
Development of search engine for companies and products using Google Maps API
Apache and MySQL server configuration
Involved in the full software lifecycle
Development of data access layer using native SQLs
Development of business layer
Development of user interface using Responsive Design, HTML5, CSS, JavaScript and JQuery
Used technologies: JAVA 1.7, Java multithreading, Spring 3.0, Hibernate, dom4j, HTMLUnit, JSoup, PHP,
PHPUnit, Log4PHP, Selenium tests, Google maps API, MySQL, Apache 2, Linux, CSS, Objective JavaScript,
HTML5, Bootstrap, JQuery, DOJO, Zend, CodeIgniter, Responsive design, JSON, CruiseControl, bash scripts,
Android, Cassandra, Redis.
June 2011 – April 2012 (contract)
Standard Chartered Bank, London
Role: Senior JAVA developer
As a senior developer I was participating in project which was designed to integrate transactional systems: FEDS
and MUREX with credit risk systems: NIKE and ACR. Each credit risk systems were responsible for calculating
risk for different kinds of financial instruments. The application was based on Spring and Spring Integration
framework. The GUI layer was developed in GWT.
Responsibilities:
Development and design of reconciliation system for integration process using GWT and Spring,
Creating a test environment which was simulating the flow of financial instruments (Spring, Spring
Integration, ActiveMQ),
Analyzing financial instruments and creating reports (VTD-XML parser),
Development and configuration of distributed transactions (JTA).
Creating bash scripts for integration process,
Involved in the full software lifecycle including requirements gathering, design, implementation,
creating documentation, consulting, testing and system deployment,
Performance optimization,
Exporting reports to excel,
Development of business layer,
Development of data access layer using Spring + JDBC,
Development of GUI using GWT and ext3.
Used technologies: Java 1.6, Spring 3, Spring Integration, Distributed transactions (JTA), GWT with ext3,
JDBC, JBOSS, Oracle DB, WebSphere MQ, Active MQ, JUnit, DBUnit, Apache POI, Maven, JDBC, SQL,
XML, XSLT, VTD-XML, MxML, CSS, Sonar, Hudson, SVN, bash, Linux
April 2008 – June 2011 (contract)
Imperial College Healthcare NHS Trust, London
Role: Technical Lead (March 2010 – June 2011) / Systems Engineer (April 2008- March 2010)
As a technical lead and system engineer I was participating in three different projects where two of them were
Greenfield projects. All of projects are web based application written in Java, Hibernate and Spring framework
The first application is called iWard and it is used for ward management in three different hospitals in London. It
provides functionalities like storing patients demographics data, managing patient allocation, storing patient notes
and ward notes, generating different kinds of reports and management of user data, etc. The second application is
called Skills Matrix and it is used to skills management. This application contains such functionalities as adding
new questions with different types of answers, searching users by all questions, generating reports, users’
management and etc. The third application is developed for national project called Health For Work. It stores the
information about people who want to get back to work after illness. It supports Health For Work Advice line.
Responsibilities:
Creating Test Driven Development Environment in Imperial College Healthcare NHS Trust (unit testing,
integration tests and regression tests) using such tools as: EasyMock, Selenium, Artifactory, Spring Test
Classes, Cruise Control, JUnit.
Responsible for code quality
Advising in technologies
Preparing and participating in technical interviews for candidates
Nominated to the organization “Oscars award” in recognition of achievements and hard work
Involved in the full software lifecycle including requirements gathering, design, implementation,
creating documentation, consulting, testing and system deployment
Development and design of all three applications
Development of data access layer using Hibernate
Development of business layer utilizing Spring and Domain Driven Design
Preparing applications to work in concurrency environment
Creating user interface using JSF, JavaScript, Ajax, RichFaces, Faclets
Configuring applications in Spring framework: IoC Container, Hibernate, Acegi, Transaction
management, unit testing, job schedulers, Web Services, etc.
Integration iWard with parallel systems using Web services – Apache CXF
Development of framework components like exception handling with use of Spring AOP, Enum
converters, automatic data export to excel using annotations,
Profiling iWard: refactoring code, changing HQL, SQL queries or criterias, using second level cache in
Hibernate, connection pooling, indexing tables. (tools: JProfiler, JMeter and OsCache)
Finding and fixing dirty data problems in external applications using store procedures in SQL Server
Extracting data to doc files, pdf and excel files (tools: Apache FOP, apache POI, iText)
Creating reports
Used technologies: Java 1.5, Spring 2.5, Hibernate , JSF, RichFaces, Maven 2, Tomcat, JUnit, Selenium tests,
SQL Server, UML, XHTML, CSS, JavaScript, XML, XSLT, Subversion, EasyMock, SQL, Acegi, iText,
JProfiler, JMeter, OScache, Apache POI, Apache FOP, JAXB, XSLT, JCAPS, JQuery.
April 2007 – April 2008
Comarch Inc. (Finance sector)
Role: Agile Java Developer
The project was designed for the financial institutions, especially for banks and investment funds. It has been
classified by European Union as an innovative product. The main aim of the project was asset and risk
management. It was made in web-based technologies (portlets). The work environment complied with condition
of Agile software development and Extreme Programming. The whole application was written in Spring
framework and hibernate.
Responsibilities:
Development of module used for registering and distributing financial operations with use of
multithreading programming
Creating the system of investment securities and its quotations
Development of data access layer using Hibernate, JPA
Development of business layer utilizing Spring, Domain Driven Design and AspectJ
Creating user interface using JSF Portlets, Faclets
Writing unit tests: JUnit, EasyMock, functional tests: Selenium
Involved in full development lifecycle
Integrating with account module using Web services (XFire)
Implementation of cross module search utilizing Hibernate Search
Used technologies: Java, concurrency / multithreading, Spring 2.0, Hibernate , JSF, IceFaces, Ant,
Liferay/Tomcat, JUnit, DBUnit, Selenium tests, Web Services (XFire), Jira, Confluence, Luntbuild, Oracle 9i,
AspectJ, design patterns, UML, HTML, CSS, JavaScript, XSLT, XML, Subversion, XDoclet, EasyMock, SQL.
July 2004 – Jnauary 2007
autodom.pl
Role: Lead PHP and JAVA Developer
This project is an automotive Internet Portal. It provides such functionalities as: storing new and used cars,
ranking system for new cars, forum, map with automotive firms, searching new and used cars by different
criteria, news. The whole application was written in multi-tier architecture and TDD environment. The part of this
project was also development of the JAVA application used to extract technical information about new cars from
excel files and web.
Responsibilities:
Designing and implementation of new cars module
Designing and implementation of automotive map with use of Google maps API
Designing and implementation of automotive forum
Development of data access layer using native SQL
Development of business layer
Development of user interface using HTML, CSS, JavaScript, Dojo
Writing unit tests with PHPUnit
Designing and Implementation of data extractor utilizing JAVA and Threads
Used technologies: Java, Hibernate, Maven, Apache POI, Web Services (Axis), Apache, SQL, MySQL,
JavaScript, PHP, HTML, CSS, Web 2.0, Google map, Dojo, Ajax, Swing, JSON.
January 2006 – July 2006
Role: Java Developer
Master’s thesis on Management of Finance System (second faculty)
I wrote Master’s thesis titled: “Expert Systems in the Financial Analysis”. A part of the thesis was devoted to the
designing and the implementation of Expert System used in the Financial Analysis to rate company’s level of
indebtedness. It was done using different financial indicators. Moreover, I created a module used for calculating
creditworthiness by means of credit ratings. The whole application was design in UML and written in Java and
Spring framework. The Expert System was written by means of Jess, the rule engine for the Java platform. I also
used hibernate to persists data in relational database. The GUI layer was written in Swing.
Used technologies: Java, Spring, Hibernate, MySQL, XML, JESS, UML, Swing.
January 2005 – July 2005
Role: Java Developer
Master’s thesis on Computer Science (first faculty)
I wrote Master’s thesis titled: “The Web services as a new way for the integration of applications”. A part of the
thesis was devoted to the designing and the implementation of an application using Web Services (Axis) to
exchange information about cars’ specification with automotive portals.
Used technologies: Web services (SOAP, UDDI, WSDL), Axis, Java, JDBC, Mysql, XML, UML, Tomcat,
Swing.
June 2003 – October 2003
INSS-POL
Web Programmer, Network administrator
I was responsible for creating a small network, and also designing and the implementation of the official web site
for INSS-POL Company.
(www.inss-pol.wroc.pl).
Used technologies: PHP, MySQL, HTML, CSS, JavaScript, Linux (Red Hat), Photoshop, Apache.
Known languages:
English (fluent)
German (good)
Polish (native)
Additional information:
Driving license since 1999