# Gabriel Espinheira > Gabriel Espinheira (Gabs) is a senior full-stack engineer in Lisbon, building for the web since 2014. He builds web products end to end, from the data model to the interface, and the AI features inside them. He is open to full-time roles, remote on European hours or hybrid in Lisbon, and to contract product builds on TypeScript, Next.js, Convex and Expo. He founded SharpHaw, a studio that runs websites, ads, content and automations for small businesses across Europe. Since March 2026 he has built its platform, SharpOS, as its only engineer, directing coding agents. ## Pages - https://www.gabs.app: Home: Gabriel Espinheira, senior full-stack engineer; selected work, experience and contact - https://www.gabs.app/work: Work: what he has been building lately, products he designs and engineers end to end, each with a case study - https://www.gabs.app/work/sharpos: SharpOS case study: the platform his studio runs on, built with coding agents - https://www.gabs.app/work/taste-vault: Taste Vault case study: coding agents rebuild the designs he studies from a build prompt - https://www.gabs.app/work/relay: Relay case study: his own AI harness, every model in one macOS workspace, built with coding agents - https://www.gabs.app/work/fabricator-ui: Fabricator UI case study: his open-source React component library on shadcn/ui, with its own design language, built with coding agents - https://www.gabs.app/work/snapforge: SnapForge case study: a free browser editor that turns screenshots into device mockups and short videos, with no upload, built with coding agents - https://www.gabs.app/about: About: every engineering role since 2015 with exact titles and dates, and the stack - https://www.gabs.app/cv: CV: his résumé on one page, ready to print or save as a PDF - https://www.gabs.app/faq: FAQ: availability, remote hours, SharpHaw, AI-written code, stack and rates - https://www.gabs.app/contact: Contact: write to him about a full-time role or a contract build - https://www.gabs.app/terms: Legal - https://www.gabs.app/privacy: Privacy policy - https://www.gabs.app/cookies: Cookie policy - https://www.gabs.app/terms-of-use: Terms of use - https://www.gabs.app/blog: Blog: notes from building software end to end, each tied to something he shipped - https://www.gabs.app/blog/category/artificial-intelligence: Blog posts filed under Artificial Intelligence - https://www.gabs.app/blog/category/engineering: Blog posts filed under Engineering - https://www.gabs.app/blog/category/product: Blog posts filed under Product - https://www.gabs.app/blog/how-to-scope-an-mvp: How to scope an MVP so the first version ships: How to scope an MVP: cut what needs something new, note where it plugs in. Two agents cost Relay 11 existing files; ElevenLabs, 40. - https://www.gabs.app/blog/minimax-m3-1-flash-test: Can MiniMax M3.1 Flash fix a real bug for free?: MiniMax M3.1 Flash fixed a real bug in 3 of 3 runs for $0, in about 4 minutes each. DeepSeek V4.1 Flash took 27 s for 1.4¢. - https://www.gabs.app/blog/modular-monolith-migration: How to move to a modular monolith without a rewrite: A tangled codebase can become versioned modules without a rewrite: cut import cycles in place first. How SharpOS got to 53. - https://www.gabs.app/blog/deepseek-v4-1-flash-1017-test: DeepSeek V4.1 Flash test: 3 of 3 runs green, under 2 cents: Can DeepSeek V4.1 Flash fix a real bug? 3 of 3 runs passed 18 failing time-zone tests, in about 90 s and under 2 cents each. - https://www.gabs.app/blog/mcp-tool-bloat: Too many MCP tools? 130 tools for half the context tokens: Too many MCP tools? On SharpOS, 130 tools cost about 32,000 tokens up front, half a strict mirror, with one registry and lazy schemas. - https://www.gabs.app/blog/tdd-with-coding-agents: TDD with coding agents only works behind a required gate: A developer directing coding agents can keep a large codebase correct with a failing test as the spec and one required gate on main. ## Contact gabriiel66@gmail.com