Andrés came into the engagement as a senior software engineer, architect, mentor, and complex-problem solver. His background spans backend development, DevOps, JavaScript internals, Python, clean architecture, testing, and team training. He was not looking for another toy exercise. He needed a Rust project that could become a credible work sample while the language itself became part of his systems thinking.
The engagement is currently in progress. The work has moved from ownership and async fundamentals into a real observability ingestion pipeline, rebuilt from the shape of an earlier Node.js collector. The first phase is deliberately bounded and reviewable. HTTP ingest, terminal visualization, persistence, and metrics are planned next, not presented as finished work.
One bounded path from sample to state
sysinfo
CPU + memory sample
bounded mpsc
capacity 1024
Tokio worker
read model + logs
Dedicated thread
blocking machine sampling stays isolated
Observable stop
sender drops, consumer drains, count logged
Turning broad architecture experience into Rust proof
Andrés already knew how to reason about systems, teams, APIs, and difficult production problems. Rust required a different kind of precision: who owns a value, when an async task makes progress, what happens when a queue fills, and how the system shuts down.
His first project ideas were naturally too large. The useful constraint was to choose a backend problem with real systems depth, then keep the first deliverable small enough to finish, test, and explain in an interview.
- •Senior architecture background, early Rust systems experience
- •Large-project instinct narrowed into a bounded pipeline
- •Every concurrency and failure path needs an explicit answer
A real Rust systems work sample in progress
The current repository has a working phase-one skeleton: machine sampling on a dedicated OS thread, bounded Tokio channels, a consumer, a read model, counters, tests, and CI gates. The project is designed to make backpressure visible, not hide it behind an unbounded queue.
The engagement is still building. The next proof points are the HTTP admission boundary, terminal dashboard, SQLite sink, and metrics surface. The value already exists in the decisions Andrés can explain; the later phases will add more surface area and measurements.
- ✓Dedicated sampler thread and Tokio consumer
- ✓Bounded mpsc with explicit load shedding
- ✓Planned next phases kept visible instead of overstated
A senior architect adding systems depth
Andrés did not need beginner programming exercises. He brought more than a decade of backend architecture, DevOps, JavaScript internals, Python, team leadership, and technical mentoring. The real gap was Rust-specific systems fluency: ownership, async execution, bounded resources, and concurrency.
- ✓Existing strength in complex problem solving and system design
- ✓Rust fundamentals taught through questions that matter in production
- ✓Career positioning built around seniority, not beginner language
One bounded path from sample to state
sysinfo
CPU + memory sample
bounded mpsc
capacity 1024
Tokio worker
read model + logs
Dedicated thread
blocking machine sampling stays isolated
Observable stop
sender drops, consumer drains, count logged
A project small enough to finish, serious enough to defend
Andrés naturally thinks in large multi-source systems. We narrowed that instinct into an observability ingestion pipeline, connected to an earlier log collector he built in Node.js. The problem is familiar; Rust makes the resource and failure decisions explicit.
- ✓Backend-first scope designed for roughly two months of focused work
- ✓A real before-and-after story can grow from the earlier collector
- ✓Enough depth for channels, backpressure, shutdown, storage, and metrics
The queue has a deliberate failure boundary
Sample
producer
try_send
non-blocking admission
Queue full
bounded memory
Shed load
no silent growth
send().await
producer waits
try_send
overload is visible
Backpressure is part of the design, not an afterthought
The first project slice makes the central idea visible: a sampler runs on a dedicated OS thread, sends into a bounded channel, and sheds load when the queue is full. A Tokio task consumes the events and updates the read model. The queue never grows without a limit.
- ✓Dedicated blocking thread for machine sampling
- ✓try_send instead of silently growing memory or blocking the producer
- ✓Counters and tests make load shedding observable
Shutdown is a protocol, not a process exit
Ctrl-C
stop signal
Drop sender
channel closes
Drain
processed count
The first slice proves clean channel closure and a real drain count. Cancellation tokens, HTTP readiness, persistence, and loss accounting stay explicit next phases.
Build something an interviewer can inspect line by line
The repository is organized as a sequence of finished vertical slices, with tests, CI gates, lint policy, design documents, and deferred decisions. That creates a stronger signal than a large unfinished demo: each tradeoff has a reason, and each next phase has a visible boundary.
- ✓Rustfmt, Clippy, tests, and documentation gates in the repository
- ✓Architecture plans explain why channels, threads, and sinks are separated
- ✓HTTP ingest, terminal UI, SQLite, and metrics remain explicit next phases
Each decision has a testable boundary
fmt
format gate
Clippy
warnings denied
nextest
behavior checked
rustdoc
links stay valid
The journey
One clear path through the build
Profile
Reframed a senior architecture background around Rust, backend systems, and observability.
Scope
Reduced a naturally large project instinct to a backend pipeline that can be finished and defended.
Fundamentals
Worked through ownership, borrowing, async, Future, Pin, Tokio, and multi-threading concepts.
First slices
Built the bounded Rust pipeline skeleton with a dedicated sampler thread, Tokio consumer, and load shedding.
In progress
Extending the project toward HTTP ingest, a terminal view, persistence, and a stronger interview demo.
Drag to explore · Select a milestone to read the full story

Mentor perspective
Andrés brings a rare combination to a Rust transition: deep experience in architecture and debugging complex systems, plus a strong need to understand the machinery underneath. The coaching work turns that depth into a project with boundaries, tests, and decisions he can defend.
Max Wells
Rustify mentor
Want a Rust systems story like Andrés's?
Max Wells
Founder · Rustify
Book your Rust career diagnostic
30 minutes, 1:1 with Max. An honest read on where you are and whether Bootcamp or Mentorship fits, before you apply.
Only a few diagnostic slots left this week.
Applications are reviewed carefully.
More client journeys
See another path into Rust

Marko Sabec
18+ yrs · TypeScript/Rust protocol engineering
Senior systems experience expressed through explicit Rust architecture boundaries

Joseph Swager
25+ yrs · Security engineering
Senior backend and security instincts turned into production Rust ownership









