Course code: BARR-12
  • Years with company: 11
  • Years programming: 25
  • Primary programming language: C
  • Other programming languages: C++, Pascal, PLC ladder logic
  • Unit test harnesses: Nunit with Jenkins CI
  • Something else: I like to bowl and golf
  • Test practice now: Manual testing of new features using the debugger. Then sometimes test cases are created to exercise those features.
  • Target system: An online gas analyzer with 2 main target boards both running an AM335x A8, once of which has a FPGA. There are additional sub-boards for a display, analog and digital I/O, and interface to the sensor.
  • Dev tools: - Visual Studio with 4 build configurations for firmware (2 for PC simulation and 2 for the target) and for C# test case development - IAR for debugging on the target - PC lint - Nant - Nunit - Narrange, StyleCop - Git Extensions, GitLab
  • Build time: 31-60 seconds
  • Coding standard: Internal rules + misra rules + Effective C++ rules
  • Function too long: When it is annoying to traverse
  • Code reviews: They are informal and often times done behind the scenes when someone is done with their branch and requests a merge into develop with GitLab
  • Code time: 50
  • Test time: 25
  • Debug time: 25
  • Favorite thing about dev: Providing solutions to customers to meet their need in a timely manner.
  • Least favorite thing about dev: The tight deadlines with a focus on just getting things done rather than getting them done the right way to produce high quality software.
  • Tdd knowledge: Not much. Just a 1 hour webinar.
  • Why are you attending: With our limited number of developers which are responsible for all phases of development and test and our resistance to writing test cases, a TDD approach to put the focus on test cases seems like a logical approach to better test coverage.