eigenfield

2,331
reputation
1
22
23

In my past job circa year 2001, I have been trained in the maintenance and debugging of embedded C code bases in a piece of software that controls moving physical mechanical hardware. Mostly, I was in the communication subsystem that does RPC. At the heart was a proprietary Bluetooth protocol core stack in a multi-threaded Nucleus RTOS, with TCP/IP and USB on the sides. In this wild wild west of software engineering where all teams share and working at same kernel mode, casting a void pointer and doing malloc was a daily routine. I secretly code, in my personal time, in C++ because reaching out to a higher language such as C++ was laughed upon by my peers and considered as a weakening of the nerves. As a result, I remember the whole experience being that like of an assembly language slightly made readable in the C syntax.

One day, I fancied and designed interfaces in the hope that someday it will connect to a higher construct. Nobody understood it, and the whole team continued on its own macho way and instead glorifying their debugging sessions deep into the ARM CPU registers.