Gabriel Fialho / software engineer
Gabriel Fialho
Now
AI team at SYDLE
Based in
Belo Horizonte, UTC−3
Works in
Rust, TypeScript, Python

Most of what I build replaces a judgement call with something you can check.

Software engineer at SYDLE, on the AI team. Right now that means retrieval and the layer between our product and the model providers. Before moving to that team in March 2026, nearly three years on the company's education platforms.

Cost per article on the publishing pipeline $0.06
Invariants pinned by tests in the quality gate 14
Agent config classes folded into one provider facade ~20
AI providers behind that single interface 11
Retrieval quality before and after the hybrid rewrite not measured
Engineers using the internal editor extension not measured

Three, picked because the decision in each is a different kind: how to rank, what to let a model do, and whether the problem needed solving at all.

not measured Elasticsearch
BM25 + kNN
RRF

Vector search could not match a name

A customer reported that searches for exact strings came back wrong, people's names above all. The index was vector only, and embeddings put two different names in nearly the same place. I added a lexical pass and combined the two rankings by position rather than by score.

Read the case
$0.06 / article Python
GitHub Actions
WordPress REST

A publishing pipeline I do not have to watch

Five stages that research, write and publish to a live site. Most of the work went into the check that sits between generation and publishing, and into keeping the publishing credentials away from the process that writes.

Read the case
adoption not measured Rust
crates.io
Apache-2.0

Six agents reading one file

Coding agents each want their own rules file, so people keep the same text in half a dozen places. The tools that solve this generate a copy per tool. Since the formats had already converged, I gave the one file several names instead, which removes the generate step and the copy you can edit by mistake.

Read the case

SYDLE, AI team

March 2026 to now

I work on the layer between the product and the model providers: retrieval, the connector facade that every agent configuration talks to, tool calling, and the integration tests that record real gateway traffic so the suite can run without paying for it.

Eleven providers sit behind that one interface:

OpenAI Anthropic Amazon Bedrock Google AI Gemini Enterprise xAI DeepSeek Perplexity Voyage AI AssemblyAI LiteLLM

SYDLE, education platforms

May 2023 to March 2026

Nearly three years across four production systems used by thousands of people, on core modules, front-end architecture and a legacy migration.

Academic ERP Online assessment Learning platform Discussion forum


Let's talk.

If you are working on retrieval, developer tooling, or anywhere a model's output has to be trusted by a person, I would like to hear about it.

Remote suits me best. On-site and hybrid work too, if you are in Belo Horizonte.