I'm a computer engineer from IFCE, currently working as a Mid-level Analyst at the Court of Auditors of the State of Ceará (TCE Ceará) and as a software engineer at Hunni Dev. Day to day I wire AI APIs — OpenAI, Gemini, Claude, Azure — into real products with Python and TypeScript, from retrieval-augmented generation to process automation, and I've also worked on front-end with Next.js/React, mobile with Flutter and React Native, and distributed systems in Java during my degree. Based in Fortaleza, Brazil.
LinkedIn · juanfernandez.app@gmail.com
AI & Automation — Python, TypeScript, OpenAI API, Gemini, Claude, Azure, N8N, RAG, MCP
Frontend — Next.js, React, TypeScript, Tailwind CSS
Backend — Node.js, Express, PostgreSQL, SQLite, Redis, Prisma ORM
Mobile — React Native, Flutter
E-commerce — Shopify, WooCommerce
Testing & Scraping — Playwright, Puppeteer, Cypress, Cheerio, Crawlee
CourseGen AI converts course planning documents (.docx) into Moodle backup packages (.mbz) ready to import, using Gemini to extract the course structure; to get around Vercel's 4.5MB upload limit, uploads go straight from the browser to Blob Storage using server-signed URLs.
python_agent is a Q&A backend that retrieves context from a Markdown knowledge base before calling the LLM, built with FastAPI and Pydantic; citations only make it into the response if the section title actually appears in the generated text, which keeps the source attribution honest.
chat_offline_ppd delivers messages instantly when the recipient is online and queues them when offline; the interesting call was hiding JMS/ActiveMQ behind an RMI interface, so the client never talks to the queue directly, only calls remote methods.
Classificacao-folhas classifies leaves from 32 species out of ~1,900 images using classical computer vision instead of deep learning — k-means segmentation, ten shape/texture descriptors reduced via PCA (93% of variance in 4 components), and SVM, which kept the pipeline interpretable and lightweight.



