Profilbild von Giulio Ferro Principal Java Engineer and Architect aus VillarssurGlne

Giulio Ferro

verfügbar

Letztes Update: 06.09.2022

Principal Java Engineer and Architect

Abschluss: Master in Computer Science
Stunden-/Tagessatz: anzeigen
Sprachkenntnisse: deutsch (verhandlungssicher) | englisch (verhandlungssicher) | französisch (verhandlungssicher) | italienisch (Muttersprache) | russisch (Grundkenntnisse)

Dateianlagen

FerroGiulioCV-202003.pdf

Skills

Java, Java 6, Java 8, javascript, Spring Framework, Spring Boot, Maven, Hibernate, SQL Server, Postgresql, Kafka, Microservices, REST services, Git, Team City, Docker, Kubernetes, Red Hat Linux, Azure, SSO, core banking, middleware, bugs, raw data, bug fixes, UAT, Jquery, Sybase, Redis, Subversion, VMWare cloud, aggregator, Kotlin, GraphQL, server + client, Gradle, Selenium, oauth2, MariaDB, AWS, Terraform, server-side, encryption, integration tests, unix, sysadmin, cloud, XML, JSON, Jersey, web servers, java application servers, database, Cloud AWS architecture, Core Java 7, REST web service, Jackson, Axis SOAP services, JPA, Eclipselink, Junit, BDD, Cucumber, FreeBSD, Apache, Glassfish, Mysql, PHP, Wordpress, uptime, scrum, user stories, Core Java 8, AngularJS, React, Guice, MongoDB, JackRabbit OAK, Flume, Amazon Web Services (AWS), Jenkins, SOA refactoring, refactoring, caching, modularization, SOA, TDD, Core Java 6-7, Java Enterprise Edition, Eclipse IDE, Spring, Mockito, Powermockito, Clearcase, git / git-stash, YourKit, Sonar, SOAP, Xpath, Jira, coding efficiency, IMAP, JEE, Netbeans, JUnit testing code, profiler, API, JDBC, SQL, Core Java 5 and 6, Java RMI, JUnit code testing, Aqua Data Studio, Excel, ODBC, JDBC driver, ERP, RDBMS, data synchronization, databases, Core Java 6, Java JDBC, object-oriented design, DDL, Integrator, ExtJS, Oracle, DB, jboss, JasperReports, Zebra, data interchange, Core Java, data processing, PKI, digital signature, X509, Java security APIs, OpenSSL, Redhat, HTTP server, Emacs, HTTP, HTTP over SSL (HTTPS) protocol, Redhat Linux, J2SE, Java Swing, GPS, JMS, Java Message Service, CORBA, RMI, Eclipse, IntelliJ Idea, JUnit 4 10, AspectJ, RUP, Agile/SCRUM, TeamCity CI, Sonar (code quality), AWS cloud, Ant, Web Services (SOAP, JSON), Jersey (Rest web services), EJB, JMS 6, Java persistence, Toplink, JSP, Servlet, JSF, Ajax, W, st, ock, Icefaces, Primefaces, Javascript libraries, UML Rational Rose, Poseidon for UML, C, C++ 3, C++11, Mysql 5.5, Oracle 11g, Linux RedHat, Ubuntu, CentOS Kernel 3, Solaris 11, Firewall, routing and networking, IPSEC / OpenVPN, OpenSSL suite 1, Java application server, tomcat, jetty, Mail server administration, qmail, postfix, dbmail, Apache web server 2, VOIP, asterisk 1.8

Projekthistorie

12/2018 - 06/2019
Senior Java Engineer
Dodax GmbH

Dodax GmbH Switzerland (MVP Factory Berlin - Germany) - remote

Projects :
Works on the customer's upcoming multi-tenent e-commerce platform, specifically on the payment microservice and on the
service aggregator greefield prototype.
Technology used
Java 8, Kotlin, Spring Boot, GraphQL (server + client), Maven, Gradle, Hibernate, Selenium, oauth2, MariaDB,
Microservices, REST services, AWS., Terraform
Achievements
Has implemented the server-side encryption of the credit card data, normally done on the client side, in order to automate
the integration tests for the credit card payment.

06/2017 - 02/2019
Senior Java Engineer and 3rd level support
Credit Suisse

Credit Suisse - Bellinzona - Switzerland

Projects :
Works on CS Credit Approval application for Investment Banking as senior developer, data reporter and third level support
analyst. Liaises with worldwide front office credit analysts to give clarifications and report bugs to development team, with
system operators to analyze and report technical issues, with business analysts to implement new features, with credit
officers to create and deliver complex reports based on raw data and conforming to Swiss banking data legislation.
Implements bug fixes and new features in the course of periodic release cycles. Performs as devops to deploy new releases
and monitor UAT and production environments inaccessible outside Switzerland. Drives innovation by discussing new
technology proposals and creating prototypes for future software major releases.
Technology used
Java 6, Java 8, javascript, Spring Framework, Spring Boot, Jquery, Maven, Hibernate, SQL Server, Sybase, Redis, Kafka,
Microservices, REST services, Subversion, Team City, Red Hat Linux, VMWare cloud.
Achievements
Has reached autonomy in the area of support to business users worldwide and in monitoring operations of production
systems.

09/2016 - 05/2017
Senior Java Engineer and Architect
Chili TV

Projects : design and implementation of new merchandising platform
Captures requirements from management and marketing stakeholders and translates them to artifact to be fed to scrum
development sprints. Evaluates and advises on architecture patterns, technology frameworks and development best
practices. Develops core modules which represents the cornerstones of joint development effort. Develops utilities to
perform and optimize import from old to new platform. Cooperates with scrum masters and product owners to best define
user stories.
Technology used
Core Java 8, javascript, Jquery, AngularJS (vers. I and II), React, Maven, Guice, Hibernate, MongoDB, JackRabbit OAK,
Kafka, Flume, Microservices, REST with Jersey and Jackson (JSON and XML), Docker, Amazon Web Services (AWS),
Jenkins, Scrum.
Achievements
Successful integration of Kafka and Flume queue management in billing service module for asynchronous communication
with other services.

07/2012 - 09/2016
Java software engineer
AMADEUS - VOLT Nice

Projects : faring software for airlines, SOA refactoring, new techonologies

Works for top airline customer on the functional and technical design, development, testing and integration of highly
complex software modules deputed to processing air-ticket fares for a variety of front-end applications : e-commerce, travel
agencies, call-centers and external XML invokers.
Analyses performance of existing modules by Java profiling and removes bottlenecks by refactoring code with ad-hoc
caching mechanisms.
Designs and implements global modularization of huge code base according to SOA principles.
Pioneers new spring-based software development approaches for his and other teams.
Introduces Cucumber as TDD based approach for better integration between product definition and development.
Coordinates within his team and between different teams according to development requirements. Interacts with end
customers for functional requirement validation.
Maintains software and liaises with customers and other teams as 3th level support for functional and technical issues.
Liases with development and support personnel in Bangalore (India) and other remote teams worldwide to coordinate new
development and clarifying platform configuration best-practises.
Technology used
Core Java 6-7 and Java Enterprise Edition, Eclipse IDE, Maven, Spring, JUnit, Mockito, Powermockito, Cucumber, JIT
optimization, Clearcase, git / git-stash, YourKit, Jenkins, Sonar, XML, SOAP, Xpath, SQL Server, SCRUM, Jira
Achievements for the customer
Successful cutover in 2013 for the international flights of Southwest Airlines, 2014 for Japan Airlines.
Modularization projects completed in July 2014 to achieve significant improvements in the maintenance and the future




development of code base, compilation independence of the functional modules and team coding efficiency.

04/2011 - 01/2012
Architect / Developer
DCS s.r.l.

Project : PEC Archiving Software (PEC : Italian Certified Email)

Designed and developed a distributed and scalable software concurrently accessing thousands of IMAP accounts. The
software performs a plethora of operations (archiving, restoring, deleting, copying, moving, etc.) commanded
asynchronously by the mail users through the front-end application. Keeping front-end responsiveness imposes rigid lowlatency
for the operations' execution. Each instance of the application manages a dynamic thread pool (with a thread limit
for each instance). Each thread exclusively and efficiently takes charge both of message downloading for each IMAP
account, and command execution as these are enqueued by the front-end. The application scales well through the creation of
multiple instances deployed across different servers.
Technology used
Core Java 7 (non JEE) application developed with Netbeans IDE. Created JUnit testing code to test operation both for
result correctness and execution time. Used Netbeans profiler to monitor correct thread-pool activity. Used SCRUM to
manage planning, development and release of core and additional software features with front-end team members and
customer.
Collateral activities
Documented software API for front-end developers. Tested front-end functionality both through application usage and the
creation of JUnit tests for developers' classes.
Achievements for the customer
This software allowed the customer to sell a valuable service to many PEC email users, given the impossibility or high cost
for these users to increment their quota on PEC accounts. Combined with very useful ancillary services (warning of quota
thresholds, automatic receipt management, etc.) this low-cost service turned up an interestingly high ROI.

07/2010 - 11/2011
Architect / Developer
EUROTEAM s.r.l.

Project : JDBC Driver creation for Legacy Database (Unify Dataserver)

Designed and developed a JDBC Driver for legacy (non-networked) Unify Dataserver. Created both the networking
interface of the driver and the multi-threaded SQL command-executing interface. The driver maintains a thread-pool with
the currently open connections (and respective input, output and error stream) in order to minimize the overhead of creating
new processes at each remote call.. A maintenance thread monitors the thread usage, closes inactive connections and
invokes garbage-collection.
Technology used
Core Java 5 and 6 (non JEE) application developed with Netbeans IDE. Uses Java RMI technology the build the
networking interface of the driver. Driver tested both with JUnit code testing and usage of JDBC - compatible database
front-end applications (e.g. Netbeans, Aqua Data Studio, Excel with a ODBC-JDBC bridge).
Achievements for the customer
This driver enabled the customer to bypass the proprietary, ill-working JDBC driver (with maximum contemporary
connections limited by the license) and to cost-efficiently open the ERP data of its customers to a new series of modern and
remunerative services (e.g. e-commerce, automatic warehouse management).

07/2010 - 11/2011
Architect / Developer
EUROTEAM s.r.l.

Project : Data synchronization between different RDBMS
Designed and developed a multi-threaded software for data synchronization between different databases. This software
allows databases to exchange data (per record / per table) in an application-driven way, in any direction. Synchronization
commands are enqueued by the client applications specifying the records / table to synchronize and in what direction. This
software acts as a daemon process with a thread-pool which consumes those commands asynchronously. The end databases
can be (and actually are) different-vendor DBs. The only requirement is that they can be accessed by JDBC.
Technology used
Core Java 6 (non JEE) application developed with Netbeans IDE. Used Java JDBC technology to access the databases.
Implemented efficient object-oriented design for managing different vendor DDL functionalities (e.g. table creation).
Implemented strict test with ad-hoc unit-tests for conformance to high-throughput requirements for customers processing a
very high number of transactions per minute.




Achievements for the customer
This software enabled the customer to push a whole slew of new services to its customers, without burdening them with the
additional cost of new hardware / software.

02/2008 - 05/2010
Architect / Developer / Integrator
EUROTEAM s.r.l./PROMETAS

Project : Fruits and vegetables traceability
Designed and developed a real-time software and system architecture to manage the complete production flow for an
international fruit selling company: acquisition, quality assessment, order processing, selection, storage, packaging and
delivery. The system is able to trace every fruit consignment back to the farmer/s who have provided it, and every farmer's
fruit provision to the customers who have acquired it. This architecture integrates seamlessly with fruit-testing hardware, the
fruit-selection machines, the workers' terminals and updates the data in the company ERP in real time.
Technology used
Used core Java 6, Java Enterprise Edition, ExtJS for the web interfaces and Oracle DB. Been developed with Netbeans IDE.
Deployed on glassfish and jboss. Very sophisticated printing templates module been designed using JasperReports and
Zebra native language for performance.
Achievements for the customer
This software enabled the customer to apply to European project for innovation.

04/2004 - 11/2009
Architect / Developer
DCS s.r.l.

Project : Smart reverse proxy

Designed and developed this highly sophisticated middleware software to map a remote site (not owned or controlled by the
customer) to end users. This software is a very efficient multi-threaded HTTP server which allows a user to access a remote
site by means of their web browser just like they were contacting it directly. Enables the customers to enforce specific
authentication policies (e.g. strong certificate-based authentication), filter the content the users can access, stop their access
to part of the site, changing the remote site content, etc. This software is multi-application, multiple remote-site, intrinsically
scalable (sessions are shared between all application instances) and secure. On peak day it topped to more than ten
thousands distinct users per day per server.
Technology used
Core Java 5 and 6 (non JEE) application developed with Emacs and Netbeans IDE. Implements the HTTP and HTTP over
SSL (HTTPS) protocol. Does sophisticated cache management with multi-threaded transactional access to cache objects.
Deployed on jboss under FreeBSD and Redhat Linux.
Achievements for the customer
This software enabled the customer to start many high ROI and / or prestigious national-wide services like : Infocamere
(access to Italian companies' data), Polisweb (lawyers access to trial data), Consiglio di Stato (lawyers access to Italian
Council of State law body and trial), ACI / PRA (lawyers access to Italian vehicle registration plates)

03/2007 - 01/2009
Architect / Project Manager / Developer
DCS s.r.l.

s.r.l.)

Project : Point of Access for Processo Civile Telematico (Italian On-line Civil Trial)
Designed and developed for Consiglio Nazionale Forense (Italian Bar Association) this highly complex multi-threaded
application according to the Ministerial technical specifications. The software is composed of different sections. Each
section takes charge of different data interchange between the end user (lawyer) and the Court office. Each section
implements separate threads which concurrently process highly sensitive trial data in a intrinsically secure way. The system
must comply with stringent legal requirements for the delivery of trial communications from the lawyers to the Offices.
Technology used
Core Java 6 (non JEE) application developed with Netbeans IDE. Does heavy XML data processing. Relies heavily on PKI
operations like digital signature verifications, file signing, X509 certificate authentication, revocation list checking and so
on. Uses both Java security APIs and OpenSSL. Each section thoroughly tested with JUnit. Deployed on Redhat and jboss
Achievements for the customer
This software enabled the customer to apply to a very prestigious Ministerial projects and potentially access a very large
user base composed of the Italian lawyers and Local Bars.

12/2002 - 07/2003
Architect / Developer
SARICA s.p.a.

Project : Cartographic elaborations
Designed and developed cartographic tools to visualize and elaborate Shape files. The most important of these tools could
produce maps with automatic house numbering starting from textual Census Bureau Data (excel files).
Technology used
Core J2SE vers. 4 (non JEE) application developed with Emacs. Makes use of Java Swing graphical framework.
Achievements for the customer
This software enabled the customer to create maps complete with acceptable house numbering without the need (and the
cost) of manually determining the true position by GPS on the field.

07/2002 - 11/2002
Consultant / Developer
TECNOGR s.r.l.

Project : SafePC

The project was promoted and co-financed by the European Commission. Its goal was the creation of a software
infrastructure to enable a network of commercial PC to manage processes in an inherently safe and real-time manner.
Technology used
Core J2SE vers. 4, JMS (Java Message Service), CORBA and RMI.

Reisebereitschaft

Weltweit verfügbar
Profilbild von Giulio Ferro Principal Java Engineer and Architect aus VillarssurGlne Principal Java Engineer and Architect
Registrieren