Course code: WEB-1
  • Years with company: 0.1
  • Years programming: 26
  • Primary programming language: C++
  • Other programming languages: C, Python, and some others much less frequently
  • Unit test harnesses: Google Test, Google Mock, CppUTest
  • Something else: I learned most of what I know about Agile practices working for Pillar Technology for about a year and a half. For personal reasons I had to move back to Tulsa, so I worked for Garmin for a couple of years. Now I am starting a new position with more freedom to practice software development correctly, and to teach others to do so within the context of the work I do.
  • Test practice now: I am just getting started at this company, but so far I am test-driving an implementation of telemetry encoding and decoding using Python, which I then intend to further test-drive in C and C++. I am looking for guidance on how to test-drive very low level code, such as direct hardware interface.
  • Target system: We work with PIC and Cortex-M series processors at the moment
  • Dev tools: Leaning toward using open source whenever possible, also ARM-MDK, MPLAB X
  • Build time: 31-60 seconds
  • Coding standard: We do not yet have one established
  • Function too long: When I can't understand it at a glance
  • Code reviews: Non-existent at this point
  • Code time: 80
  • Test time: 10
  • Debug time: 10
  • Favorite thing about dev: I enjoy creating value and solving people's problems
  • Least favorite thing about dev: It doesn't happen fast enough
  • Tdd knowledge: I have practiced full time TDD in C++ for about a year and a half, ending about two years ago. In the interim, I have practiced TDD in Python when developing tools used in the software build process.
  • Why are you attending: I want to improve my ability to test-drive code for embedded systems, and to encourage my colleagues to practice TDD in their projects.