Hello world!

I'm Ivan Prats. I am a Senior Full-Stack Web developer here in Barcelona for big and small technologically ambitious projects.
Entrepreneur at heart
VDD (Value Driven Development)

Because that is not hard enough: I also try to stay in shape, happy, spend quality time with my friends and family, and have some hobbies.

I use this website as my CV, if you want to grab a copy: feel free to .

Tech stack

Back:

  • Node.js (+ Express) in Javascript and Typescript
  • Sails.js (MVC framework for Node + Express)
  • Adonis.js (MVC framework for Node in Typescript)
  • For DBs: PostgreSQL, MongoDB, Redis

Front:

  • Vue.js
  • Nuxt (static-site-generator framework for Vue)
  • TailwindCSS
  • Alpine.js
  • (some React for fun)

Others:

  • Typescript
  • Stripe's Webhooks & API's
  • Shopify's Webhooks, Liquid (server-side rendering language), & API's
  • Git
  • CI/CD with Github Actions
  • Acceptance testing, organised in Unit, Integration, and e2e
  • Ajv JSON schema validator

Design & Architecture patterns

To name a few, I've implemented before, or have an opinion about...

Low level
(Inner OOP)

  • Inheritance
  • Encapsulation
  • Abstraction

Mid level
(Inter OOP)

  • Singleton
  • Factories
  • Entities
  • Value Objects
  • Active Record

High level
(Code-Repository level)

  • Domain Driven Design
  • Hexagonal Architecture (Ports & Adapters)
  • CQRS
  • Event based Architecture

As well as Test Driven Development, eventhough I've never practised it 100% strictly

normal people's Languages

  • Spanish: - Native
  • English: - Fluent (Cambridge C1 Advanced certificate)
  • Catalan: - Fluent
  • French: - B1

Timeline

2022 ➡ present

Senior Back-end Engineer at Wallbox

Collaboration

  • Working with many Back-end and Embedded system dev teams defining and scoping down a new custom Communication Protocol between IoT Devices and Back-end

Infrastructure

  • Scaling micro-services with AWS lambda functions
  • Building complex and rich Dashboards with Datadog custom metrics & logs
2017 ➡ 2022

Head of Technology in an E-commerce & Retail Barcelona Startup that I co-founded

In charge of all Technology in the company. From the public website, to designing and implementing an internal Admin/ERP custom to the business.

Customer-facing website

  • Design/CSS implementation in TailwindCSS
  • Deciding the software to use, in order to leverage providers and SaaS to prioritise Business value
  • Comunicating between Business, Design/Branding, and Tech to achieve balance and maximise value and time-to-market

First ERP MVP

  • Monolith in Node.js using Sails.js with MongoDB
  • Fast iterations, mainly focused on the Customer and the Product towards Product-Market fit

Leading the ERP 2.0 version. Applying DDD and Hexagonal Arquitecture in Typescript

  • Monolith Monolith in Node.js using Adonis.js
  • Progressively decoupling the old Monolith into acceptance tested and typed code
  • Agile methodology, 2 week sprints, grooming the tasks up to Acceptance Criteria
  • Leading a team of 2 other developers and designer

Infrastructure

  • Leveraging Heroku and application high-level design to automatise and reduce DevOps & costs and as much as possible. The Code is where the value is, not the Infrastructure.
  • Leveraging SQL and No-SQL databases depending on the use-case, using the Repository pattern
  • Setting up an automatic CI/CD Pipeline with Github Actions to gain quality and safety with PRs
2020 ➡ 2021

Freelance projects

To name some front & back-end ones:

  • Full Vue.js / Nuxt front-end for Franca
  • Back-end Private Shopify APP to synch Google Sheet to the stocks and prices of 1M€+ E-commerce in Typescript
  • Setup and Front-end Shopify theme for Laamuse
2014 ➡ 2016
2010 ➡ 2014