Course code: BARR-7
  • Years with company: 3
  • Years programming: 6
  • Primary programming language: C
  • Other programming languages: C++, Ruby
  • Unit test harnesses: Ceedling, Unity, Cucumber
  • Something else: My goal is to make maintainable, reliable systems. I'm originally from Southern California, and studied Computer Engineering during undergraduate. When I saw the TDD for Embedded C book, I knew I had to have it!
  • Test practice now: TDD, in the future would like to do BDD, integration testing, and perhaps Design By Contract
  • Target system: Ruggedized, cartridge-based power system that delivers maximum reliability and flexibility over a typical 72 hour mission, at a weight savings to the soldier of more than 65% compared to conventional lithium-ion batteries
  • Dev tools: Previously AVR JTAGICE, Atmel Studio, transitioning to STM32 and IAR IDE
  • Build time: 31-60 seconds
  • Coding standard: Attempt to follow MISRA, efforts trailed off at some point...
  • Function too long: When I need to scroll.
  • Code reviews: Casual, sometimes rushed, sometimes too detailed.
  • Code time: 35
  • Test time: 50
  • Debug time: 15
  • Favorite thing about dev: When things work. When customers like the things that work. I think the integration between hardware and software is fun to work with.
  • Least favorite thing about dev: Legacy code that sucks. Difficult to find spontaneously combusting bugs.
  • Tdd knowledge: I've read most of the TDD for Embedded C book, and have used it in production code, but would like to gain more understanding with more of the advanced concepts.
  • Why are you attending: Would like to gain more insight into how to TDD more effectively, understand the concepts better AND would love to see how TDD fits into the bigger picture, e.g. what tools and how TDD fits into integration and system-level testing.