Nicolò Marcucci

Data analyst — Jönköping, Sweden

I build Python pipelines that turn raw data into analysis-ready datasets, and run applied economic analysis end to end. Right now I do that as a data analyst intern at EODynamics AB in Sweden, while finishing an MSc in Applied Economics and Data Analysis at Jönköping International Business School.

I also write software. Some of what is below is analysis and some of it is a working product — I find the two get better when the same person does both.

Projects

Ten projects. Each has a short write-up in plain English; where something is deployed there is a live link, and the code is on GitHub.

Team Hightower

676 phone photographs of a student welcome week, cut down to 49 and told as a story rather than an album.

  • Python
  • Pillow
  • JavaScript
  • Three.js
  • ffmpeg

Baseline

Tennis ratings that publish a prediction before each match, then show you whether it was right.

  • Python
  • DuckDB
  • FastAPI
  • Next.js
  • TypeScript

Retirement and Financial Stress

Does retiring leave people worse off? Italy's 2011 pension reform makes it possible to answer that causally rather than by correlation.

  • Python
  • pandas
  • linearmodels
  • IV-2SLS

Svenska OS

My Swedish textbooks turned into a course I actually use: capture a word, let AI enrich it, practise the chapter, review it later.

  • Next.js 15
  • React 19
  • TypeScript
  • Prisma
  • Postgres
  • Claude API

Traffic Zones and Air Quality

Italian cities closed their centres to traffic in 2015. Did the air actually get cleaner, or was it going to anyway?

  • Python
  • pandas
  • statsmodels
  • Difference-in-differences

Product Engineering Lab

Three interface primitives — a command palette, a spatial canvas, explorable charts — built to be imported by a stranger, not demoed.

  • TypeScript
  • React
  • pnpm + Turborepo
  • Storybook
  • tsup

Together

A social events app for Jönköping University students — post what you are doing, see who is up for it.

  • Next.js 14
  • TypeScript
  • FastAPI
  • MySQL
  • Leaflet

Ricci & Capricci

A landing page for a hairdresser in Pietrasanta, built to do one job: get people to pick up the phone.

  • Next.js 14
  • TypeScript
  • Tailwind CSS
  • Framer Motion

How I work

Say what the data cannot support

Every project below states its limits somewhere public — which years the data actually covers, which comparisons were never tested, what a result does not prove. A number without its caveat is not a finding.

Tests that fail for the right reason

I test the logic, not the markup: pure functions checked as maths, interfaces driven through real keyboard and pointer input. A test should break when the behaviour breaks, not when a class name changes.

Finished means someone else can run it

A project is done when a stranger can clone it, follow the README, and get the same result — or open a URL and use the thing. Analysis that only runs on my laptop is a draft.

Tools

Grouped by how much I actually reach for them, not by how good they look in a list.

Every day
Python · pandas · SQL · Git
Comfortable
TypeScript · React / Next.js · statsmodels · SQLite / DuckDB · matplotlib
Used for specific projects
Stata · MongoDB · Prisma · FastAPI · scikit-learn · QGIS
Languages
Italian (native) · English (C1) · Spanish (B2) · Swedish (A1)

Contact

Email is the best way to reach me. If you want the short version instead, the CV is one page.