Adrian Veres
Contact
Education
Phone: 614-***-**** Email: ************@*****.***
Qualifications Master Degree in Computer Science (major in Economic information technology) Romanian American University, Romania
Bachelor’s degree in IT System Management
Romanian American University, Romania
Languages English Fluent
Italian Basic
French Basic
Professional experience
Profile I am a self-motivated team player with strong problem solving and analytical skills, easy adaptable to the company and project environment, open to innovations and new chal- lenges. With a passion for Java I am always looking to improve my skills through inten- sive training sessions, self-paced education and continuously learning as well as upgrad- ing my technology stack through challenging projects. I like working with Java Spring Technologies, follow code clean standards and embrace DevOps to automate my work. Key Skills
Technologies used: Java, Spring MVC/Core, Apache Liferay Portal, JPA, MyBatis, Ice- Faces, EJB, Bluemix, Javascript (AngularJS, jQuery), Swing, Kibana, Webservices
(SOAP, Rest)
Databases used: MySQL (MariaDB), Oracle DB, DB2, Cloudant DB (CouchDB) Testing tools: jUnit, Mockito
Methodologies: Waterfall, Agile(Scrum)
OS: Windows, Linux
Build tools: Maven, Ant, Jenkins
SCM: SVN, Git
Servers: Tomcat, Liberty, Jboss, BlueMix
Key Courses and
Training
Fundamentals of Java Programming Cisco Certificate LPIC Linux Essentials Certificate
Java SE 7 Programmer I Certificate
IBM Project Management Fundamentals Certificate
IBM Certified Application Developer - Bluemix Cloud Platform V1 Career History 01/2018 - present
Personal project
Created an application for documents analyzing using OpenNLP cognitive engine. The communication with the end-user is made through a web interface and REST API. 10/2011 - 12/2017
IBM, Romania
Team Leader
During my time in IBM I have been involved in several Java and Mobile development projects as a developer initially and later as a team leader within the MPS project. Working with clients from different industries (banking, sports-betting, transportation, telecommunication) has been very motivating for me, expanding my communication and cultural skills. In my current role, I lead a small team of medium and senior developers, together with them we form a team that handles and transforms the backend systems of the oldest bank in the work Monte dei Paschi di Siena. My responsibilities within the team leader role are focused in respecting the quality and the milestones of the committed deliverables as well as guidance and mentoring for the team members, as follows:
Work with the team to approach the milestones and define the goals
Effort sizing and estimates
Oversee day-to-day development
Work closely with our Italy architect colleagues to finalize the details of the implementation and technical depth
Monitor team performance and report on metrics
Mentoring & Technical guidance for the team members
Code review
Technical documentation
I am part of the recruiting team on Java technologies for IBM
Discover training needs and provide coaching
Listen to team members’ feedback and resolve any issues or conflicts
Encourage creativity and risk-taking
Suggest and organize team building activities
05/2007 - 10/2011
BetBrain Software, Romania
Application Developer
BetBrain provides a free web service, enabling users to compare odds in sports betting from worldwide bookmakers, for both pre-match and in-running events. Odds are auto- matically updated in co-operation with the bookmakers listed at BetBrain.com. On top of that, BetBrain offers valuable sports information such as news highlights, stats and scores and odds history graphs.
During my time with BetBrain I have been involved on different projects using Java technologies to implement data crawlers that collect, normalize and compare the odds from all the main players in the market and displayed the information live. The challenge when working with live scores is to have the information fast, correct and always synchronized. As part of my role I was responsible of the following:
Software development and hot fixes
Task distribution and effort tracking
Requirements analysis
Code quality review
Managing change efforts
Mentoring and knowledge transfer
Effort sizing and estimates
Assignment History
01/2018 - present
Cognitive Adviser
About the company: Personal project
Project Description: The Cognitive Adviser engine uses both supervised and unsupervised techniques to process and understand raw data. Without eliminating human validation the model starts with a set of automated steps that reduce the time of data preparation, entity extraction and annotation. Supervised learning and recalibrating of the system is performed based on user input and feedback to the system. The system is adaptive learning from both the received input and from the balanced feedback collected from multiple users, additional dimensions as user profile
& insights are used to correct the fitness function as part of the new learning iteration. The engine's capabilities are exposed through a REST API and a web interface. Technologies used:
- JSE, REST WebServices, Spring, Tomcat, JavaScript, JQuery, JS Graphs (D3), MariaDB, OpenNLP, Swagger
- Maven, Git
- Eclipse
Position: Application developer
Contribution: I was responsible for creating the web interface, the REST services and the middleware, where the OpenNLP are integrated. At the middleware level, the input documents are verified, cleaned and converted to plain text, for better results in OpenNLP. Relevant documents are used further for training the cognitive engine once each day, for more accurate results.
12/2017
Brussels Airport – xMAS Pepper
About the company: With nearly 25 million passengers in 2017 Brussels Airport is one of the largest airports in Europe and the main airport in Belgium. Brussels Airport connects the capital of Europe to 238 destinations around the globe, served by 76 airlines.
Project Description: Create a mobile app to be installed on a Pepper robot, to gather information from airport travelers, by small interaction with them (tickets scan, taking selfies, small conversations). These data has to be displayed in a graphic, showing the amount of interactions between the robot and people. Technologies used:
- JSE, REST WebServices, Spring, Bluemix, JavaScript, JS Charts, Cloudant DB
(CouchDB)
- Maven
- Eclipse
Position: Application developer
Contribution: I was responsible for creating an API, to allow the mobile app to send information regarding the interactions between the robot and people and display the result in a web page. I was receiving the data through REST services and saving it in a specific format in a Cloudant DB. To show graphics about the robot’s activity, I was using the data stored in the database and parsing it using JavaScript and JS Charts library, to create graphic reports for the client. 05/2017 – 11/2017
Belfius Bank
About the company: Belfius Bank is an autonomous Belgian banking and insurance group wholly owned by the Belgian federal state through the Federal Holding and Investment Company (FHIC). Belfius Bank & Insurance is, above all, a local bank, collecting savings deposits and investments via its distribution networks in Belgium. It then re-invests these funds into the society in the form of loans to individuals (mainly mortgage loans), the self-employed, small and medium-sized enterprises and the liberal professions, corporates and, in particular, public and social institutions. Project Description: Create two mobile apps, ’People Search’ and ’Reserve’, which will be use by the Belfius employees. The ‘People Search’ app scope is to find detailed information about the bank’s employees, like location, department, role, team, etc. The
‘Reserve’ app allowed the users to reserve meeting rooms in different bank buildings. Also this app shows detailed information for each room, like capacity, location, accessories (video projector, writing table, etc), availability. The apps were connected to the bank’s existent Microsoft Exchange Service. The connection between the apps and the bank’s systems was made through an API, which also is in the scope of the project.
Technologies used:
- JSE, REST WebServices
- Maven, Kibana
- Eclipse
- Integration with Microsoft Exchange Service
- WebSphere
Position: Application developer
Contribution: I was responsible for the development of the middleware API, between the mobile apps and bank’s systems. The API is responsible for LDAP authentication, validations, Exchanges requests, reporting, etc., exposing a simple REST API to the mobile apps, to avoid overcharging the apps with to much logic regarding the requests to the bank’s services. For example, an user has to be authenticated in two different systems, LDAP and Microsoft Exchange and the app will send only one auth request, so the API will do the logic behind this. An additional output of this API were some visual reports regarding the users activity, using Kibana. As input for these reports, are used log files, which had to be formatted in a specific format, to be recognized by Kibana. These reports were visible in the bank’s intranet. 01/2016 – 04/2017
Monte dei Paschi di Siena
About the company: Banca Monte dei Paschi di Siena S.p.A. known as MPS, is the oldest surviving bank in the world and the third largest Italian commercial and retail bank by total assets, according to research from Mediobanca, using 2015 data. Founded in 1472 (545 years ago) by the magistrates of the city state of Siena, Italy, as a "mount of piety", it has been operating ever since. In 1995 the bank, then known as Monte dei Paschi di Siena, was transformed from a statutory corporation to a limited company called Banca Monte dei Paschi di Siena (Banca MPS). Project Description: End-to-end transformation of the entire core system, including over 50 applications backend and frontend from a large Java and landscape. The complexity of project comes from its large technology stack, monolith architectural structure, security guidelines and the challenge to transform and migrate old business core modules to new technologies. The focus of the transformation is to break the former monolith architecture into small chunked components which are easier to maintain, respect the coding standards and are flexible to extend with the new banking regulation changes. Within my role as a team leader I work closely with our analysts and architects’ colleagues from Italy to align their business requirements with the technology strategy we follow and raise the correct risks in case of technical misalignment. Also, I make sure that our team is developing accordingly to the business and technical analysis and follows the coding guidelines and rules established in the project.
Technologies used:
- IceFaces, Liferay Portal, JavaScript, JSF, JSP, JQuery, CSS, CustomTags
- EJB 3.0, Spring Core, JUnit, MyBatis, Ant
- Soap WebServices, Camel-route
- Eclipse
- JBOSS, Tomcat
- ORACLE, DB2
Position: Team leader
Contribution: In my role, I have been involved on both frontend and backend development, end-to-end testing, integration and maintenance. As technical team leader, my responsibilities involve mentoring the new members, juniors or seniors, provide effort estimations and provide technical support. 08/2015 - 12/2015
DSV
About the company: Since their establishment in 1976, DSV has been through a series of mergers to maintain a key position in the global transport industry. As a result, DSV has grown stronger and larger. With the acquisition of UTi Worldwide Inc. in 2016, the company has further strengthened their global network and are now the fourth largest global freight forwarding company.
Project Description: This project has two deliverable products. One is a mobile application which will be used by the delivery drivers and one web application (portal) which will be used by the back-office personnel. The purpose of this application was to monitor and manage the vehicles, packages, drivers and the portal users. Within my role, I have been involved in both front-end and backend development, expanding my knowledge skills in the Angular JS area, while actively working to build the middleware structure and services that exposed the backend system of records of the client to the application.
Technologies used:
- AngularJS, REST WebServices
- JSE, JPA
- JUnit, Ant
- Eclipse
- DB2, Integration with LDAP
Position: Application developer
Contribution: I was involved as developer in the portal application, on backend (web services, database operations) and frontend (implementing the UI). I was involved in developing an application used by back office employees. The application allows the management of users, delivery drivers, packages and delivery vehicles (add new items, updating, delete, status changes), on short handles the operative site of the client. The user interface of the application was made using Angular JS and Angular Material, all these deployed inside WebSphere Portal. The backend is accessed through REST services and for data persistence I have used JPA. The deployment on the servers was made using Jenkins.
01/2015 - 07/2015
Vodafone Romania
About the company: We’ve come a long way since making the first ever mobile call in the UK on 1 January 1985. Today, more than 400 million customers around the world choose us. In 30 years, a small mobile operator in Newbury has grown into a global business and one of the most valuable brands in the world. We now operate in around 30 countries and partner with networks in over 50 more. Project Description: The project scope was to connect the backend system containing the client subscriptions with the telecom hardware (telecom antennas), provided by third parties (Huawei and Ericsson). The linking was made through Soap web services, which were exposing the telecom devices software interfaces. Technologies used:
- JAVA, JDBC, JAXB, Soap Web Services
- Eclipse
Position: Developer
Contribution: My role within the Vodafone project has been to develop the middleware integration structure, building Soap Web Services to expose the backend system of records via Soap Web Services. Also during my engagement, I have developed an application to transfer clients’ subscriptions information between two internal systems. The current application was using DOM and Hibernate and an alternative was required because the execution time was around 80 minutes, which was to much, although the application ran once a day. The information was provided through multiple XML documents. To avoid memory overloading, for parsing I have used Stax, as an alternative for DOM parsing, since the first does not keep in memory any information and acts like a stream. Since the memory problem was solved, I used multi-threading and executors to manage the threads, to avoid large execution time. For database operations, I have used JDBC, since data persistence was not necessary. The execution time decreased to 20 minutes. 10/2011 - 01/2015
Monte dei Paschi di Siena
Project Description: Development of the entire core system. Here are included backend and frontend applications. The project has a high complexity and it involves numerous technologies, standards, architectural guidelines and development strategies. The development is made according to the business and technical analysis. Technologies used:
- IceFaces, Liferay Portal, JavaScript, JSF, JSP, JQuery, CSS, CustomTags
- EJB 3.0, Spring Core, JUnit, MyBatis, Ant
- Soap WebServices, Camel-route
- Eclipse
- JBOSS, Tomcat
- ORACLE, DB2
Position : Developer and Team Leader
Contribution : As developer, I was involved on both frontend and backend development, end-to-end testing and maintenance.
As team leader, I was coordinating the team that quality products are delivered in time; mentoring the new members, juniors or seniors; I maintained a good and professional relation between the team and the client; I assigned different tasks to team members; provided time estimations and keep a track as accurate as possible of the tasks. Also during this project, I was at the client location for knowledge transfer and to improve the professional relationship with the client.
11/2009 – 10/2011
BetBrain Software
OddsMatrix Mobile
Project Description: Developing and maintaining a dynamic website for mobile devices and an application based on Android OS.
The project purpose was sports betting and the data was collected from external sources using RPC and direct socket communication to ensure real time updates of the data.
Technologies used:
- Spring MVC. JavaScript, Ajax, JSON, JSP, JSTL, JQuery, CSS
- Soap WebService, Android JDK, JDBC, RPC, Executors (threading management)
- MySql
- Tomcat
Position : Developer
Contribution: I was in charge with code development, finding the fastest solution to keep the data update in real time, to communicate with the client to ensure that they use a proper environment to be able to handle a large amount of data transfer. 01/2009 – 10/2009
BetBrain Software
Core Team Project
Project Description: Developing the main framework used to process the data received from the Collector and LiveCollectors teams. The processed data was stoked into databases using JDBC.
- Technologies used:
- JUnit, JDBC
- MySql
Position : Developer
Contribution: I was involved in maintenance and developing 04/2008 – 12/2008
BetBrain Software
LiveCollectors Project
Project Description: Same tasks as in the Collector team, but here the data collected was only from real time updates sources. The most used way to get data was through socket communication, sending requests to a server and parsing the server response using different APIs depending on the response format.
Technologies used:
- DOM, STAX, Soap WebServices, JSON, Rest WebServices
- Adobe Flash AS
- JUnit, JDBC
- MySql
Position : Developer and Team Leader
Contribution: I started to work on this project from scratch, so I was involved in creating the application structure and choosing the right technologies to use for the project, in development and managing the team.
05/2007 – 03/2008
BetBrain Software
Collector Project
Project Description: Developing and maintaining an application which purpose was to extract data from different sources (XML documents, HTML pages) using DOM, STAX, WebServices. The collected data was processed using frameworks developed by the Core Team and sent forward to a database using JDBC.
Technologies used:
- DOM, STAX, Soap WebServices
- JUnit, JDBC
- MySql
Contribution: For the first few months I was responsible only for maintaining the current code. After this accommodation period I started to implement new operations according to the client request and technical analysis.