Author Image

Without any further delay, Benito

Benito Palacios Sanchez

Senior software engineer

Born in Granada, Spain, I found my passion about software development and start self-learning programming. After completing a bachelor in Electrical Engineering, I jumped into software development positions in Granada and then I moved to Switzerland where I currently live.

During my career I’ve worked in projects related to: distributed systems with pub/sub protocol DDS; sport timing and live TV production; DevOps projects; backend frameworks; and collaboration workflows, quality assurance and release management.

Apart from software development, I was able to grow on operational skills by having the role of senior technical operator of timing and scoring systems in the Olympic Games at Tokyo 2020 and Winter Olympic Games Beijing 2022. I did setup of network infrastructure, hardware and software and operation of software during sport competitions. I was the last level of support engineer helping teams to troubleshoot network protocols and software issues in critical moments.

As a hobby I maintain several open-source projects and frameworks for game reverse engineering (ROM hacking) and fan-translations. I study and analyze low-level details of game consoles and debug and write assembly code (ARM). I help teams to translate video-games acting in a role usually known as Localization Engineer. I make programs to edit proprietary formats of text, image, font and audio files.

I also love to give technical talks at conferences and online.

Experiences

1
Swiss Timing LTD

February 2019 - June 2023, Corgémont, Bern, Switzerland

World leading sports timekeepers. They build, deploy and operate sport timekeeping hardware and software and TV graphic production for major sport events like Olympic Games.

Senior software engineer - Tech lead

January 2022 - June 2023

  • On-site senior technical support engineer at Beijing Winter Olympic Games 2022.
  • Technical lead of a team working on .NET/C# desktop and cloud software projects.
  • Design and lead implementation of software components for TV live production.
  • Implementation of network protocols based on serial port, TCP and UDP.
  • Design, implement and troubleshooting (Wireshark) of distributed with the DDS protocol.
  • Establish quality standards and collaboration workflow: contribution (pull requests, issues), git workflow, testing (manual and automatic) and releasing (deterministic, traceability, support).
  • Plan and refine backlog and sprint with scrum master.
  • Mentoring of software developers.
Software engineer

February 2019 - January 2022

  • Develop framework components for sport software.
  • Develop and troubleshoot (Wireshark) software for distributed system with the DDS protocol.
  • Development of monitoring system with Prometheus and Grafana.
  • Design and develop deployment framework with PowerShell DSC.
  • Define testing and release process of software projects.
  • Design and deploy network and software infrastructure in sport events.
  • TV graphic operator in FINA World Championship 2019 - Guangzhou.
  • On-site developer and timing & scoring lead operator at Summer Paralympic Games Tokyo 2020 for Boccia.

Real-Time Innovations, Inc.

October 2015 - January 2019, Granada, Andalusia, Spain

Expertise in RTI Connext DDDS: a technology for the Industrial Internet of Things (IIoT).

Software engineer

March 2017 - January 2019

Software support engineer

October 2015 - February 2017

  • Answer of technical questions and remote troubleshooting on distributed systems using DDS.
  • Support on different languages (C, C++, Java, C#) and on different OS (Linux, VxWorks, Integrity, Windows)
  • Troubleshooting of network protocols via Wireshark: IP, UDP, TCP, DDS.
  • Customer on-site visits with the consultant team to provide design knowledge and support.
  • Handle of critical escalated cases.
  • Build and release engineer for patch releases.
2

3
Internship
Real-Time Innovations, Inc.

March 2015 - August 2015, Granada, Spain

Responsibilities:
  • Development of examples for the C++11 API of RTI Connext DDS.
  • Quality assurance of new releases.

Education

B.Sc. in Electrical Engineering - Telematics (networks) specialty
Grade: 8.0 out of 10
Taken Courses
  • Telematics systems
  • Communication Networks and Infrastructures
  • Communication Networks Security
  • Micro-controller programming
Extracurricular Activities
  • Founder member of 'IEEE Student Branch of Granada'. Participant in several local and international events.
  • Participate in the programming challenge IEEEXtreme. Team winner at national level for edition 9.0.
  • Team winner of the 'IV ETSIIT Technical Challenge' with the project 'Multi-Agent Video Distributed System for Nursery Schools'. We use DDS technology to distribute video over Internet.
  • Several talks about reverse engineering and programming

Projects

Yarhl
Yarhl
Author Sep 2013 - Present

Framework to implement and convert file formats. It provides a virtual file system, format conversion APIs, full featured binary IO and plugin support to support common formats.

Ekona
Ekona
Author Mar 2022 - Present

Website Library part of the SceneGate framework that provides support for Nintendo DS and DSi file formats.

Lemon
Lemon
Author Feb 2019 - Present

Library part of the SceneGate framework that provides support for Nintendo 3DS file formats.

Texim
Author Apr 2021 - Present

Proof-of-Concept of an extensible image file formats API for SceneGate.

Nitrap
Author Aug 2018 - Present

Nintendo DS anti-piracy and flashcard kernel research.

Tinke
Tinke
Author Dec 2010 - Mar 2016

Program to see, convert, and edit the files of Nintendo DS games. It supports images, texts, music, fonts and textures.

ImaPo
Author Mar 2022

Tool to help to translate images with GNU gettext PO files in Weblate.

Ninokuni game modding
Localization Engineer Oct 2011 - May 2015

Modding tools and assembly fixes for the Japanese to Spanish fan-translation of the game “Ni no kuni: Shikkoku no Madoshi” for Nintendo DS.

"Attack of the Friday Monsters" game modding
Localization Engineer Sep 2019 - Dec 2020

Modding tools for the English to Spanish fan-translation of the game “Attack of the Friday Monsters” for Nintendo 3DS.

LayTea
LayTea
Localization Engineer Dec 2020 - Jun 2021

Modding tools to translate “Professor Layton” games for Nintendo DS.

Ambition Conquest
Localization Engineer June 2015 - Present

(Private code until translation release) Modding tools for the English to Spanish fan-translation of the game “Pokémon Conquest” for Nintendo DS.

PleOps.Cake
PleOps.Cake
Author Sep 2020 - Present

DevOps pipeline (build and release) based on Cake for C# projects in GitHub.

LibreGlucoseWatcher
LibreGlucoseWatcher
Author July 2023 - Present

Prototype apps to monitor glucose levels of FreeStyle Libre sensors from Garmin sport watches, desktop and phones.

xdelta-sharp
Author May 2015 - Dec 2021

Decompressor for binary delta encoding VCDIFF (RFC-3284). xdelta3 compatible

ThirdLicense
Author May 2020

.NET tool to generate third-party notice files from all the transitive dependencies of a .NET project.

Autocomplete XML Atom plugin
Author Aug 2015 - Dec 2018

Atom IDE plugin to have autocompletion of XML files from XSD schemas.

Arduimmer
Author Nov 2013 - May 2015

ICSP Arduino programmer for PIC and ZigBee chips.

NitroDebugger
NitroDebugger
Author Mar 2014 - Sep 2016

Remote GDB protocol client and UI for ARM

RTI Connector C#
RTI Connector C#
Author Dec 2017 - Jan 2019

C# API for RTI Connector to communicate applications via DDS pub/sub.

RTI LogParser
RTI LogParser
Author Jun 2016 - Feb 2018

Enhances RTI Connext DDS log messages to troubleshoot network protocol issues.

LocaViewer
LocaViewer
Dec 2014

University challenge project - Multi-agent distributed video system using DDS.

eaTopic
Jan 2015

Implementation of a custom pub/sub protocol.

Talks

El misterio de las claves de Pokémon Mundo Misterioso
GDG DevFest Jaén 17th Nov 2018

Talk at the DevFest 2018 organized by the GDG Jaén (Google Developer Group). The presentation is about a Twitter thread I did on July. For a week I was figuring out how the game Pokémon Mistery Dungeon Explorers of Sky from Nintendo DS generate and validate a kind of password for rescue missions, special events and object sharing. It almost a study of the assembly code of the game with some notes about the implementation. Code repository

ROM Hacking Level 02: Imágenes
TraduSquare Twitch 13rd October 2018

Live streaming from Twitch requested by the TraduSquare community. This time I talked about the file format of the images, sprites and textures in video-games and all the kind of compression and techniques used in the Nintendo DS. Slides

ROM Hacking Level 01: Textos

Live streaming from the virtual reality platform AltspaceVR. The talk explains different topics and concept related to text formats like encodings, tables, fonts and compression. Slides

Destripando juegos: protecciones anti ROM Hacking
JASyP'18 13rd April 2018

Talk at the JASyP (Jornadas de Anonimato, Seguridad y Privacidad). Organized by the group Interferencias in the University of Granada. I talked about the security mechanisms like encryption that we can find inside of the video-games with the goal to obfuscate their files to avoid hacks, mods and fan-translations.

Protocolos del Industrial IoT
IEEE Developer Days 12nd May 2017

Talk at the IEEE Developer Days organized by the association IEEE Student Branch of Elche. I talked about the Industrial Internet of Things (IIoT) and the main network protocols and framework in the market. I gave details on how one of them, DDS, works with a demo.

Recent posts