Senior Software Engineer
The ideal candidate will have a good knowledge of English and at least five years previous experience together with the following requirements:
- Excellent knowledge of Java and main libraries and the environment in general: Spring, JEE, JMS and JPA (with Hibernate)
- Excellent knowledge of Java and Typescript and main libraries and environment in general: Angular and React…
- Knowledge of the principles and main object-oriented design patterns of the GOF
- Good familiarity with architectural patterns such as: MVC, RESTful and EIP
- Good experience with the main relational DBs: Oracle, DB2, MySQL and PostgreSQL
- Familiarity with versioning tools for code, particularly Git
- Familiarity with build tools such as Ant and Maven, and with continuous integration environments, such as Jenkins.
The following would be an advantage:
- Knowledge of frameworks particularly oriented towards microservices, such as Spark Framework and Spring Boot…
- Knowledge of ESB or integration libraries such as Apache Camel
- Knowledge of the principles of functional programming and the ability to apply them in Java 8 and earlier versions of the language
- Knowledge of the main NoSQL DBs: MongoDb, Cassandra and Couchbase
- Familiarity with the principles of the Agile manifesto and participation in Agile or Lean teams
- Experience in TDD and in any case with automated testing at all levels: Junit, Selenium...
- Familiarity with Linux environments and IBM Mainframe
- Knowledge of PaaS platforms: Openshift, Kubernetes and Docker, etc.
Candidates of both genders (Law 903/77) may submit their CVs, returning also the note for compliance with Italian Legislative Decree 196/2003 on the protection of personal data.