I've been a keen software engineer since I was a lad, when I would spend many hours labouriously tweaking 6502 assembler code on my old BBC Micro and hoping that the cassette recorder wouldn't die before I had successfully saved my work.
When I started out as an audio engineer, there wasn't much overlap between the worlds of software and audio - but how things have changed now!
My most important software efforts have been with Takelog and its successor Lumberjack. At one point, Takelog and Lumberjack had been used on the film scores of 6 of the 10 highest-grossing movies of all time.
Takelog was written in the mid-1990s to make the job of managing recording sessions a whole lot easier - especially for the tape-op/assistant engineer on classical music and film score sessions, where you are recording and keeping multiple takes of the same piece of music. It was a DOS program running on any old knackered PC that controlled tape machines (using the Sony P2 Serial Protocol), logged takes and timecodes, made playbacks easy and quick, and printed out all the paperwork that was previously a nightmare of blunt pencils and aching wrists. It was used in all the studios at Abbey Road, and made me quite popular with the team of assistant engineers! Many external engineers came to work at Abbey Road, and some of them saw it in action, liked it, and bought it.
Lumberjack was its Windows successor, controlling up to four machines with complete independence. I've carried on developing it, mainly these days for my own use. As well as controlling external recorders, it now directly controls DAWs such as Pyramix, Reaper, and SAW Studio, and can work with a Streamdeck for easy session control.
I've added lots of features to help the recordist's workflow. For example, in Pyramix, the default operational method is to assign a new take number when the transport is stopped and started. This is fine when one is doing long takes, but sometimes it's advantageous to log many takes in quick succession. Lumberjack makes this easy - you just keep on recording, without stopping, pressing the New Take button as frequently as necessary. Once the session is finished, Lumberjack will take control of Pyramix and cut the long recording into multiple regions, each named with the take number and any comments you may have entered, making it ready for editing.
Another useful feature, especially when preparing session listening mixes for other producers to use when marking up edit plots, is the ability for Lumberjack to create verbal take number slate announcements on another track in the DAW (e.g. a quickly spoken "one" "three" "seven" for Take 137) which can be mixed in to the audio given to the producer. This can prevent a whole bunch of problems later on!