Red Echo

June 7, 2010

Today I start my new job at Synapse, a product-development engineering firm downtown. I’ll be writing firmware for embedded controllers, teaming up with electrical and mechanical engineers to design gadgets. This is a significant change of career direction for me, and I’m looking forward to it.

Embedded programming offers a lot of the same sense of freedom I felt back in the ’80s when I was first learning to code, and programmers were in control of the entire machine. Modern software development is far more abstract – it’s more about manipulating the gargantuan stacks of libraries that do all the actual work, fitting your design into the constraints of the operating system, the network, and the rest of the software coexisting on the machine. You can do far more, of course, by building on top of all that existing code: but it lacks some of the old elemental zest.

Microcontrollers also have a lot of the same constraints that were so much fun to push through on those old computers: slow clock rates, small memory spaces, limited I/O capabilities. The ATmega328 chips I use for most of my hobby projects have a 16 MHz clock, 32K of flash memory, and 2K of RAM – and yet this is luxurious compared to, say, an MSP430. Creativity thrives on constraints, they say, and it is true that the most thoroughly satisfying few weeks on the Groovik’s Cube project last year came when I figured out just how close the color timing was going to come to the controller’s performance limit.

It’s a smallish company – looks like fifty or sixty people – and so far everyone I’ve met has been smart and enthusiastic. The office is an entire floor of a big old building – high ceilings, ornate facade, tall concrete pillars, wire runs hung from the ceiling, and a quiet hum of conversation.

I don’t know what I’m going to be working on yet, but I can’t wait to start.

3 Comments

  1. Awesome! I hope you can talk about the stuff that you’re working on, or at least the stuff you have worked on after it ships.

    Comment by Dan Lyke — June 7, 2010 @ 1:28 pm

  2. Congrats, and good luck!

    Comment by Micah Cowan — June 7, 2010 @ 9:44 pm

  3. Mars, getting back that close to the metal should be lots of fun. I work for a small startup with 16 people and we do embedded networking software on MPS430 microcontrollers, so I know where you’re coming from. I hope you can share your insights as you get more into your actual projects. Your work environment looks really cool too.

    Comment by Joe Huber — June 9, 2010 @ 1:52 pm