Ivano Pagano

Conceptual simplicity and underlying structural complexity. Elegant solutions powered by a rich and clear design. This is what I strive to achieve and software development is my tool and my passion. I enjoy the opportunity given to us by technology to support our creativity and bring ideas to life.

about me

I tend to have strong opinions on different aspects of software development, architecture, code, culture; yet I'm fairly open to exchange and discussion regarding differing positions.

On the lookout for technologies that streamline the development process, the reasoning process, the delivery; it's not about the technology in itself but about the affordances it can provide.

Programming languages, software frameworks, C.S. theories are all valid means to simplify the daily chores of development and possibly reveal new unforseen opportunities.

I do care for the user, at the interface and interaction level.

I believe that the agile approach has its merits, as long as it stays grounded in day to day experience and feedback.

I aim to become a good software architect. I never did cover such role officialy but my current and previous jobs entailed evaluating and choosing the appropriate software stack and technologies.

I actively embraced the current wave in functional programming and reactive systems design. I especially fancy distributed systems, Domain Driven Design, Artificial Intelligence and games.

I'm constantly reading software books and articles and keen to attend to software conferences, when possible. I attend and contribute to local developer groups.

professional experience

Scalac
2016–today
Scala design, development and support for different projects, including: web-apis, streaming event storage, financial trading, blockchain.
Scala-Italy
2016–today
Co-organizer of the italian conference on Scala
Fhoster
2015–2016
Core development team for the Livebase product. The job cover all aspects and the whole development lifecycle of a web-based backend-generating turnkey application provided as a PaaS solution.
Integra Sistemi
2015
Support for the Livebase team. The job cover all aspects and the whole development lifecycle of a web-based backend-generating turnkey application provided as a PaaS solution.
MC-link
2005–2015
Design, development, testing, deployment of both back-office and B2B integration systems for a mid-sized ITC company.
MC3 Informatica
2004–2005
Software consultancy including design, developement and maintenance of web applications to manage fiscal audits for the italian tax agency.
Sinergy Group
2003–2004
Software consultancy for website and mobile development.
Ludonet
2001–2003
Development of game and entertainement platforms for web and mobile.

education and training

technical skills

Experience working on macOS, linux and windows systems.

Advanced knowledge of scala and its ecosystem: akka, play! framework, slick, typelevel ecosystem.
Long term experience with java 8+ and the java-ee platform, familiar with a wide range of open source libraries and the jvm in general.
Working experience of javascript and html5/css3.
Basic proficiency with haskell and elm.

Professional experience with intellij idea, vscode, eclipse, sublime text.

Professional experience with different development and deployment tools including sbt, maven, gradle, git, jenkins, docker.

Professional experience with sql, relational and nosql databases (apache cassandra, mongo-db) and apache kafka.

Consolidated knowledge of object oriented and functional approach and related design principles and patterns. Familiar with reactive distributed systems, test-driven design, domain driven design, cqrs, event-sourcing, category theory.

personal

I can drive cars and motorbikes

I play drums and sing

I love ice-hockey, surfing and snowboarding

I read a lot

I love my family and believe in God