Alisson Linhares

About me

I am a computer scientist with a solid background in bare-metal programming, Linux, computer graphics, generative AI, hardware emulation, compilers, and game development. I have worked for several leading companies, including IBM, Dell Technologies, and PUC-Campinas. In addition, I have proven experience developing highly sophisticated applications, including operating system components such as drivers, schedulers, graphical interfaces, bootloaders, game engines, and firmware. I also have academic teaching experience and have led and overseen several research and development projects throughout my career.

Career Overview

This is a summary of my career. Put the mouse over each branch to see what happened during that period.

Education

PhD candidate, Computer Science 2017 - Paused

UNICAMP - University of Campinas, São Paulo, Brazil

Master's degree, Computer Science 2013 - 2015

UNICAMP - University of Campinas, São Paulo, Brazil

Bachelor's degree, Computer Science 2007 - 2011

University Tirandentes, Sergipe, Brazil

Experience

Senior EngineerDec 2022 - Apr 2025

DELL, São Paulo, Brazil

  • I worked for the OCTO and AIRI divisions, designing Retrieval-Augmented Generation (RAG) pipelines, a multi-agent orchestrator compatible with modern LLM standards, and enabling advanced content generation using Stable Diffusion and ControlNets. Moreover, I led multiple R&D initiatives related to the implementation of agentic systems and ReAct-based agents with structured output, function calling, and advanced reasoning and planning techniques.
  • Among my responsibilities, I can also mention: I was responsible for interviewing new engineers for the company; I had the opportunity to interact with partners including NVIDIA, DataRobot, Cohere, and DataStax to evaluate platforms to be acquired by Dell Technologies; I coordinated a group of PhD researchers; presented research results to the board; and designed and wrote definitions and materials for leadership. Additionally, I organized Scrum meetings, configured and deployed models on-premises, and assisted new engineers.
  • Relevant Technologies: LLM Agents, RAG, LangChain, LangGraph, LLM Models, Stable diffusion, Python, Linux, Docker, Scrum, FastAPI, RestAPI, Microservices, TDD, MLOps, Cursor, AI

Undergraduate Professor Mar 2021 - Feb 2023

PUC, São Paulo, Brazil

  • I lectured on several subjects, including Computer Architecture, Operating Systems Theory, Introduction to Algorithms, Game Programming, Artificial Intelligence for Games, Data Structures and Algorithms, NoSQL Databases, Web Development, and Digital Systems.
  • Relevant Technologies:Unity3D, Blender3D, RiscV, VHDL, C, C#, C++, AMD64, RISC-V, Python, NodeJS, Javascript, CSS, HTML, MongoDB, SQL, Linux

Lead Programmer / Co-founder Mar 2020 - Feb 2022

AXNTEK, São Paulo, Brazil

  • I was the co-founder, lead programmer, and manager. I developed the entire infrastructure, including the backend, frontend, game APIs, and most of our game mechanics and interfaces. Over two years, we successfully launched three games on both Android and iOS.
  • At AXNTEK, I had the opportunity to develop scalable cloud infrastructure using Oracle Cloud, Podman, Redis, MongoDB, Node.js, Express.js, and Nginx, as well as to create sophisticated game mechanics using C#, Python, and Unity3D.
  • Other projects developed by us: axntek games
  • Relevant Technologies:Unity3D, Blender3D, C#, Python, Android, iOS, Linux

Computer Architecture Research Aug 2019 - May 2020

Idea IP, São Paulo, Brazil

    I worked on optimizing a Digital Signal Processor (DSP) simulation pipeline. Moreover, I made several valuable contributions to the company, including developing an open-source tool called SCProf, which helps the engineering team profile precision across various areas of the chip during simulation. This contribution also resulted in a publication: A SystemC profiling framework to improve fixed-point hardware utilization
  • Relevant Technologies:Python, C, C++, SystemC, Linux, Application profiling, Multithreading

Linux Software Engineer Oct 2015 - Jan 2017

IBM, São Paulo, Brazil

  • I worked in the Linux Technology Center, developing solutions for PowerPC servers. I had the opportunity to contribute to two projects: MA (Migration Advisor), where I served as the main developer, providing impactful contributions to automating the migration of AMD64 SIMD instructions to AltiVec; and the Advanced Toolchain compiler stack, where I improved and optimized several internal mechanisms, including the development of SIMD helper interfaces. Additionally, I gave several lectures on the subject.
  • I was also invited to give a talk at Unicamp: Migrating applications to the Power architecture
  • Relevant Technologies:AMD64, Compilers, PowerPC, Linux, Java, SSE, AVX, AltiVec, Binary Translation, Instruction Mapping, C, C++, Linux

Undergraduate Professor Dec 2011 - Feb 2013

UFS/SE, Sergipe, Brazil

  • Before moving to Campinas to start my master's degree, I was an undergraduate professor at UFS - a federal university in Brazil. There, I had the opportunity to teach Operating Systems Theory, Object-Oriented Programming, and Imperative Programming to students across four different programs.
  • Relevant Technologies:Java, C, C++, Assembly, Linux

Game Developer Jan 2009 - Jan 2012

Lumen Games, Sergipe, Brazil

  • At Lumentech, I had the opportunity to work as a programmer alongside a group of very talented people, developing games, simulators, and libraries. I started as a trainee and later became a full-time developer. The four most significant projects I worked on at Lumentech were Velozes do Oeste, Missão H-18, Cartada Final, and Virtual Fly. Virtual Fly is my oldest project at Lumentech, but it is far more complex than the others, mostly because of its outdated VR hardware and technology. In Virtual Fly, I worked on the head-tracking integration, part of the code organization, and half of the simulation mechanism. Today, Virtual Fly is outdated, but it was very important to my career because it taught me how to code in C++.
  • Relevant Technologies:Unity3D, VR, C#, C++, SQL, AS3, Flash

Projects

SCProf: a SystemC profiling framework to improve hardware utilization <code>

  • SCProf is a SystemC profiler designed from scratch to help engineers analyze DSPs' precision utilization. I developed it as a research project for IdeaIP, a company specializing in DSP design. The profiler operates in real time during hardware simulation, collecting telemetry data similar to the Linux Perf app. Using this framework, the company optimized the fixed-point precision requirements of several internal DSP modules, resulting in a published paper.
  • Relevant Technologies: Linux, SystemC, C++, Python, Flask, RestAPI

Native Kit: Support for running Native Virtual Machines. <code>

  • NativeKit is a framework that implements a minimal POSIX interface, allowing developers to recompile their Linux user-level applications to run on bare metal (without an operating system). It uses GRUB to bootload an exokernel integrated into the application's static binary, reducing system requirements and improving the performance of binary translators.
  • Relevant Technologies: Linux, C, C++, Assembly x86/AMD64, GRUB, POSIX, Drivers, Kernel development

Neutrino OS: an original Operating System design. <code>

  • Neutrino OS is a fully capable operating system developed in x86 assembly. I built everything from scratch using old 486DX manuals as references. I designed the entire software stack for this project, including the bootloader, firmware, shell, graphical interface, applications, filesystem, preemptive scheduler, memory management, event subsystem, APIs, threads, and several drivers for 2D/3D accelerated video, hard drives (PATA/SATA), CD-ROM (PATAPI), keyboard, and mouse.
  • Relevant Technologies: Linux, C, C++, Assembly x86, Drivers, Kernel development

Oxygen.js - A Javascript Object Oriented Graphic Engine<code>

  • Oxygen is an old object-oriented isometric HTML5 game engine created by my brother and me, just for fun, in our free time. The engine is highly portable and relatively fast for a JavaScript application. It runs entirely on Canvas2D and includes all the common features found in modern game engines, such as 3D transformations, cameras, collision detection, render indexing, asset loaders, and more. It is capable of running on almost all current browsers and input devices.
  • Relevant Technologies: JavaScript, WebGL, CSS, Canvas2D, Computer Graphics, Object-Oriented Programming

Nesemu: a Ricoh 2A03 processor emulator<code>

  • Nesemu is a minimal NES emulator designed to teach students the decode-and-dispatch technique and general device emulation. This project is the result of a course I taught at Unicamp during my PhD, in which students successfully developed emulators and NES games. The course was well received and led to several derivative projects. This repository includes a reference implementation of the Ricoh 2A03 processor, which I created to assist students during the course. For more information, see the supporting material: Introduction To The NES Hardware
  • Relevant Technologies: Linux, C, C++, Assembly x86, Emulator

ARMx: an ARMv7 emulator capable of generating RISC-V binary traces<code>

  • armx is a basic ARMv7 emulator used to test several ideas related to multi architecture binary translation. The emulator is capable of running ARM code on a Linux machine, as well as generating RISC-V translation traces. It is compatible with POSIX standard.
  • I conducted this study to analyze whether it would be viable to design a microcoded RISC-V chip capable of emulating ARMv7.
  • Relevant Technologies: Linux, C++, ARMv7, RISC-V, POSIX, Emulator

Skills

Python, C#, C++, C, JavaScript, TypeScript, Shell Script, SQL, MongoDB, Redis, RISC-V, ARM, AMD64, VHDL, GCC/G++, NASM, AS, Bash/zsh, GDB, perf, HPC, Linux, Embedded Linux, Raspberry Pi, Android, Git, VI/VIM, Cursor, NodeJS, FastAPI, REST API, Express.js, Docker, Podman, Oracle Cloud, MLOps, Ollama, TGI, lit-gpt, LLM, LangChain, OpenAI API, LangGraph, Generative AI, ReAct Agents, Problem Solving, Scrum, Computer Graphics, Unity3D, Newlib, GRUB, Dynamic Binary Translation, Hardware Emulation, KVM, Compilers, Kernel, AI, Backend, Game Development

Languages

  • Portuguese - Native
  • English - Advanced

More info

I am a developer with more than 12 years of experience designing applications for various computer architectures and operating systems, including Android, iOS, macOS, Windows and Linux. Unlike most developers, my practical skills are not confined to a specific layer of the computing stack. I am curious, self-taught and capable of working across the entire system - from CPU design, firmware, and operating systems to compilers and higher-level software, such as VR/AR games, 3D physics simulations, responsive websites, and AI-driven applications. Given my expertise and generalist background, I am seeking a Systems Engineer position where my skills can be fully utilized and challenged.