Marco Ferreira — explore the machine
Marco Ferreira
Software engineer. Pull up a chair and have a look around.
About
AI
Projects
Systems
Now
Contact
Night
Setting up the desk
Skip intro
CPU
GPU
RAM
SSD
Server
I/O
Tap a part to look inside.
CPU
About me
GPU
Artificial intelligence
RAM
Now and skills
SSD
Projects
Server
Systems architecture
I/O
Contact
What's inside
The Core
: Who I am, how I got here, and what I do away from the keyboard.
Accelerated Ideas
: The AI systems I build at work, and the models I run at home.
Active Memory
: What I'm working on right now, and the skills I have.
Project Archives
: My biggest projects, what I'm building now, and everything else by category.
Connected Systems
: Software built to scale, and the systems I've built to learn how.
Connect
: How to reach me, plus my résumé.
Projects
Draftly
: A Google Docs-style editor where several people can write in the same document at once, which I built with my friend Richard Baah.
OptiSQL
: An in-memory query execution engine I built with my friend Richard Baah.
GooseDB
: A full database system I'm building from the ground up in C++23, for storing and querying media.
myshell
: A Unix shell written in C, with pipes, redirection, wildcards and a batch mode.
mymalloc
: My own malloc and free in C, with error detection, leak reports and a benchmark against the real thing.
Cache simulator
: A CPU cache simulator in C that replays memory traces and counts hits, misses and evictions.
Recursive word count
: A C program that walks files and folders and lists every word by how often it appears.
Pratt-parsing expression evaluator
: A C++23 calculator REPL that parses expressions with Pratt parsing and remembers variables.
IMP interpreter in OCaml
: An interpreter for a small imperative language, with loops, conditionals and functions.
Face and digit classification
: Three classifiers for handwritten digits and faces, two of them built from scratch, compared on accuracy and speed.
A* search through mazes
: Repeated Forward, Backward and Adaptive A* finding paths through mazes the agent can't see in advance.
JBMDL assistant, first version
: The first version of the AI assistant I built for Joint Base McGuire-Dix-Lakehurst: ask by text or voice, get cited answers.
Python executor MCP server
: An MCP server that lets AI agents run Python code, with the dangerous parts blocked.
House price regression
: Predicting house prices from their size with linear regression and a decision tree.
Distributed training system
: A fault-tolerant distributed training system in Go, with a replicated parameter server.
This portfolio
: The site you're on: a 3D desk with my PC, where every part opens a section on the monitor.
Solar System Explorer
: Fly a spaceship through a solar system with real orbits, in the browser.
RU Burgers
: A restaurant ordering app, built twice: once for the desktop with JavaFX and once for Android.