Teacher

I like to make available to others my knowledge and skills to grow those who have a passion for IT

What I can teach:

Java programming language. With so many years lived between curly brackets I’ll be able to teach Java also to dummies people

C programming language. It has been my first language, and you know: the first program language is never forgotten

HTML, the old plain web “language”: it’salways good to know

Arduino. Yes, it’s my passion and so I’m happy to be an evangelist of it. I can teach basic electronic and C

Enel

ENEL, the leading company in Italy and the second in Europe among those supplying electricity.
I worked on several projects including SEREM GAS and SEMPRE Elettrico

My role was initially as Senior Java and Oracle developer and, after one year, also as Team leader coordinating a group of three people

In both projects the architecture was identical: JSP and Struts as View and Controller, and DAO layer as Persistence

As both projects treated huge quantity of data, there was a very important work in sql optimization,
So, optimizing query with indexes, partition, explain plain (thanks a lot TOAD) and executing statistic.
Also, many business functions were inside directly the DB by sql functions and procedure, called many time also by Java batch

In these projects I experienced a lot in oracle technologies

The source code versioning was implemented by SVN and the build tool was Ant

Java Architect

Oracle Certified Master, Java EE 5 Enterprise Architect

“The act of getting certified will make you a better architect.” (Humphrey Sheil, CTO, SCEA, and SCEA examiner)

This certification is for enterprise architects responsible for architecting and designing Java EE compliant applications with an emphasis on making the best use of Java EE features to create flexible, scalable, secure designs.

The SCEA certification “signifies that its holders can handle advanced design responsibilities and lead roles in creating applications. To succeed, SCEA candidates must demonstrate a deep understanding of appropriate uses of modern design architecture and current Java EE technologies for business applications.” (Ed Tittel and Dr. Bill Brogden)

Formerly Sun Certified Enterprise Architect (SCEA).

Software Architect

Translate customer needs into a software defining the most appropriate technologies

  • Architecture and Object Oriented design of information systems.
  • Analysis of the integration of different information systems
  • Production of use case models, software architecture documents, analysis and design models and implementation models using UML. The tool I normal use is Enterprise Architect
  • Follow up of the data analysis and data modelling.
  • Coordination of the implementation of the technical architecture
  • Help to deployment of the components, help to configuration management
  • Participation in technical working groups, progress meetings and meetings with the users
  • Provide assistance or support in the resolution of production issues

Tool used: Jira, Jenkins, Enterprise Architect

IBM Certified Solution Designer

Rational Unified Process (RUP) Analysis and Design

The IBM® Rational Unified Process® has become the de facto industry-standard process for large-scale enterprise software development. The IBM Certified Solution Designer – IBM Rational Unified Process V7.0 certification provides a powerful way for solutions developers to demonstrate their proficiency with RUP.

Exam coverage includes

  • Core RUP concepts, the new RUP process architecture, and key principles of business-driven development
  • RUP’s architecture-centric approach to iterative development: practical issues and scenarios
  • Patterns for successful RUP project implementation–and “anti-patterns” to avoid
  • The Unified Method Architecture (UMA): basic content and process elements
  • RUP content disciplines, in depth: Business Modeling, Requirements, Analysis and Design, Implementation, Test, Deployment, Project Management, Change and Configuration Management, and Environment
  • Essential RUP work products, roles, and tasks
  • RUP phases, activities, and milestones
  • RUP tailoring and tools for your organization–including introductions to IBM Rational Method Composer (RMC) and MyRUP

Java Business Component Developer

For Enterprise JavaBeans (EJB) technology business component developers who are responsible for designing, developing, testing, deploying and integrating EJB applications.

This certification was formerly known as Sun Certified Business Component Developer (SCBCD).

  • EJB Overview
  • Session Bean Intro
  • Session Bean Lifecycle
  • Stateful Session Bean
  • Intro to Entities
  • Working with Entities
  • Entities and JPA
  • Life-Cycle Callbacks
  • Reference and Injections
  • Deployment Descriptors
  • JPA Query Language
  • EJB Deployment
Java Web Component Developer

The OCPJWCD (or SCWCD) certification provides knowledge required to develop Java EE 5 Web applications using JSP and Servlets.

  • Topic 1 – The Servlet Technology Model
  • Topic 2 – The Structure and Deployment of Web Applications
  • Topic 3 – The Web Container Model
  • Topic 4 – Session Management
  • Topic 5 – Web Application Security
  • Topic 6 – The JavaServer Pages (JSP) Technology Model
  • Topic 7 – Building JSP Pages Using the Expression Language (EL)
  • Topic 8 – Building JSP Pages Using Standard Actions
  • Topic 9 – Building JSP Pages Using Tag Libraries
  • Topic 10 – Building a Custom Tag Library
  • Topic 11 – Java EE Patterns
Java Programmer

The Sun Certified Java Programmer  (SCJP) exam is the basic exam required to demonstrate solid understanding of Java as a programming language.

While most advanced certifications focus the test on your knowledge of the API, this entry level one focuses on variables, class and interface definition, arrays, exception handling, encapsulation, polymorphism and flow control. Basic API knowledge is required about strings and arraylists

SQL Developer

Using the SQL coding language, I design tables, writes queries, and ensures that these queries perform at optimal speeds in Oracle and MySql databases.

Reviewing query performance and optimizing code.

Designing and coding database tables to store the application’s data.

Working with application developers to create optimized queries.

Creating database triggers for automation.

Creating table indexes to improve database performance.

Programming views, stored procedures, and functions.

Programmer

Transform technical specifications into compliant modules through the use of programming languages

Full stack developer specialized in Java EE language and tools

In particular:

  • SOAP (with JAX-WS) and Rest (useless specify JSON knowledge of course) Webservices
  • EJB3 and JMS
  • Spring BOOT and MVC

I know the importance of test. And that’s why I always use JUNIT together with some tools for code coverage like JaCoCo or SonarQube (that, in reality uses JaCoCo 🙂 )

In the past projects I worked with Struts and JSF

Of course I know how to access to DB with Java: JDBC and Hibernate and so I can make use JPA or also Spring Data (which I recommend)

In past projects I made use of Liferay, being a Liferay Developer
I know what is a XSLT because I used it in some my (old) of projects

Furthermore I worked in OSGI environments

In my personal projects I’m using MQTT protocol

Sincerely NOT specialized in front-end, but I like build dynamic web pages using Spring MVC, HTML5, CSS and Jquery (with Ajax). But I’m planning to study Angular

I make use of Sonar (Lint and possibly Qube) to be helped in order to have a better programming quality

In the last project I started using Docker.
Docker is used to host our DEV environment: Weblogic server and Oracle Database

Experience in Python, based on IOT personal projects

SQL developer, specialized in Oracle and MySql database

Deep knowledge of GIT and Maven

Able to manage Java applications server like Weblogic and JBoss