Work

You can experience this as a fancy formatted résumé here (PDF).

Professional
Seven Solutions
2019-
A small university spinoff company specialized in time-providing switches (PTP, White Rabbit) needed a senior engineer to help push the development to a more professional state and to improve their products.
Most of the work now is detecting and fixing bugs to make the systems more reliable and implementing new features (typical UNIX programming in C, mostly).
Silicon Gears
2018
After one year of wasting three hours a day packed in multiple forms of public transport (see HP below) I decided to make life easier and move back to BarcelonaTM and work for a (then) small software consultancy for automotive customers (ADAS, time-triggered Ethernet).
That means doing lots of bringups of cutting-edge SoCs from Renesas, Nvidia and Samsung (mostly Yocto-based Linux builds and customizations) and a bit of software porting to QNX.

Really fun place to work in, and incredible people.
HP Inc.
2016-2018
I worked in the large format printing business for a while fixing a lot of bugs, making a lot of minute customizations, testing and bringing up new hardware and implementing some functionalities here and there.

It was nice but the commuting was killing me. Met a lot of great people, though.
Broadcom
2012-2016
I worked in the PLC projects at Broadcom (then Corp.). As a part of the firmware team I developed firmware, fixed bugs and debugged lots of things (applications, libraries, drivers, network protocols, simulators, hardware controllers). After a while, my main focus became the porting of Linux to the PLC SoCs, including board bring up and BSP, driver development and application programming.
Some time later I was put in charge of the system integration between Wifi and PLC SoCs at software level.

After that, Avago bought Broadcom Corp. and turned into Broadcom Ltd., then the emperor decided PLC was just not cool enough and dumped us all.

All in all, it was a good time. Challenging work, stressful at times, but I learned a lot, we did a very good job and the products actually shipped.
Cilab
2010-2012
A group of intrepid, young, inexpert hackers were put together to build an integral IoT platform when IoT wasn't even a thing. We did pretty well but it didn't go further than a prototype.
The system was formed by very small low-cost boards with a microcontroller + 802.15.4 transceiver and hardware interfaces to physical devices.
The platform got to a rather functional point, albeit at a small scale: It could form wireless mesh networks of geo-localized boards that controlled LED lamps, it could be accessed and controlled from client applications on a PC, from custom web apps, twitter and Google Maps. It was pretty neat.
Personal projects
LateralT
2016-
I started a web site for publishing purposes and a blog for venting purposes and assorted entertainment. In a pure Knuthian fashion, I spent some time developing my own CMS to build the blog on. I suggest you don't read it if you're easily offended by poor UI design choices.
Tea: Tiny Environmental Analyzer
2010
When I was finishing my M.Sc. and my interests leaned very clearly to systems programming and embedded systems, I developed a workflow for embedded application development and deployment based on Linux, Java and OSGi and I implemented a miniature weather station based on it. The weather station used a BeagleBoard as the computer and Phidgets for the sensors.
It had a webGUI for control and status info and it exposed the collected data in real time through web services. It also was remotely hot-upgradable, and new sensors could be plugged and used without having to shut the application down.

It won a honorable mention in the IV University Free Software Competition (Spain)
Some guides, manuals, and the code: here.
Small hacks
GNU Make for complex projects
2016
A guide on how to use GNU Make properly when your project spreads over an arbitrary number of nested subdirectories. This is the proper way to do it. Inspired by this and based on this. Complete example here.
fsmlib
2019
A small, simple and feature rich library for implementing Finite State Machines. MIT licensed.