Rui Batista is a seasoned backend engineer and team lead based in Lisbon with 17 years building robust Scala systems, from high-throughput event-driven microservices to monoliths. He blends a passion for typed functional programming and distributed systems with pragmatic dev-ops practices, guiding teams from design through production. Rui brings hands-on concurrency and stability expertise—evident in his open-source work improving the eSpeak NG speech synthesizer by fixing hangs, replacing semaphores with condition variables, and addressing buffer overflow risks. His background includes accessibility-focused engineering and mobile iOS development, having written speech drivers and accessible PDF tooling for visually impaired users. Comfortable in both startup and enterprise contexts (including Daimler Trucks & Buses), he excels at turning complex, real-time requirements into reliable, maintainable services. Beyond code, he pairs system-level thinking with empathy for end users, especially those relying on assistive technologies.
16 years of coding experience
11 years of employment as a software developer
BS computer science distributed systems software engeneering, BS computer science distributed systems software engeneering at Instituto Superior Técnico
eSpeak NG is an open source speech synthesizer that supports more than hundred languages and accents.
Role in this project:
Back-end Developer
Contributions:2 PRs, 17 comments in 6 years 2 months
Contributions summary:Rui focused on improving the internal workings of the eSpeak NG speech synthesizer. Their contributions primarily involved refactoring the code to use condition variables instead of semaphores for thread synchronization within the FIFO and event handling mechanisms, and fixing related hang issues. They also addressed potential buffer overflow vulnerabilities and improved audio output control by stopping it before the fifo_stop is called, which streamlined the command processing flow.
eSpeak NG is an open source speech synthesizer that supports 101 languages and accents.
Role in this project:
Back-end Developer
Contributions:6 commits in 2 months
Contributions summary:Rui made several contributions focused on improving the stability and efficiency of the speech synthesizer's core functionality. They addressed potential buffer overflows by modifying `strcpy` calls in the dictionary loading process and improved concurrency by replacing semaphores with condition variables in the FIFO implementation and event handling. The user also fixed a potential hang issue and optimized the audio output process.
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.