Working in Prima Assicurazioni
Some bureaucratic details Link to heading
- company: Prima Assicurazioni SpA
- contract: Italian NCLA, full time
- place: multiple
- before 2022: full-remote - Pisa, PI
- after 2022: full-remote - Pistoia, PT
- start: May 2021
- end: April 2022
As a Software Engineer (05/2021 - 04/2022) Link to heading
Summary Link to heading
I have worked in Prima Assicurazioni SpA as a Software Engineer in the “Intermediari” team. Being part of the “Intermediari” team implies providing a platform for all the Insurance Agents that are selling Prima’s products. The didn’t have a separation between backend engineers and frontend engineers: everyone had to contribute to both ends of the platform in order to ship new features. The features I contributed to were used to:
- enhance Agents’ experience, like a calendar used to aggregate which notable events were due (e.g. payments, expirations)
- increase the cross-sell capabilities of the Agents’, like the integration with the Home Insurance product
This was a brief parenthesis, but I think it made me even more versatile than before! I used two languages I’ve never used beforehand and they are rather niche compared to the likes of Java, JS, PHP, etc. I was also able to appreciate the value of observability in a cloud-first environment due to the use of Datadog. Prima was a breath of fresh air in these regards.
Role & Responsibilities Link to heading
As a software engineer, my responsibilities mainly revolve around being an owner of the teams’ project and sometimes contributing to other teams’ projects. To give a non-exhaustive list, a Software Engineer in Prima has to:
- develop and maintain team’s µservices
- contributing to other teams’ repositories
- participating in the team’s discussions around what to develop and provide technical insights
- interact with external teams when an integration is needed
- onboard newcomers and mentoring more junior engineers
- complying and contributing to the technical best practices
Involved technologies Link to heading
In “Intermediari” team, we used:
- Rust - as the backend language
- Actix Web - as the web framework
- Diesel - as the go-to ORM
- DataDog - as the observability platform
- EKS - as the container orchestrator
- GitHub - as VCS and CI
- PostgreSQL - as the RDBMS
- Elm - as the frontend language
- Robot Framework - as the e2e automated testing framework
- Braintree - as the payments’ provider
- Drone - for the CD
When contributing to other µservices, technologies also implied:
- Elixir - as one of the main backend languages
- PHP - as the Prima’s monolith backend language