Course code: WEB-19
  • Years with company: 10
  • Years programming: 12
  • Primary programming language: C
  • Other programming languages: C# Python Java
  • Unit test harnesses: Unity GoogleTest nUnit
  • Something else: Most of my work currently involves wireless communication stacks.
  • Test practice now: Unit tests for small modules. System tests, generally using a PC tool automating one end of the communication link.
  • Target system: Nordic nRF52 series (ARM Cortex-M4)
  • Dev tools: GCC Eclipse Visual Studio for PC test tools.
  • Build time: 31-60 seconds
  • Coding standard: In house coding standard
  • Function too long: When it does more than one thing, when it is hard to nail down what the function actually does when documenting it.
  • Code reviews: Formal part of our software development process, using Gerrit. All code requires at least one reviewer to approve before integration.
  • Code time: 20
  • Test time: 60
  • Debug time: 20
  • Favorite thing about dev: The flexibility! You can take the same hardware and create an entirely different functionality just by changing the software.
  • Least favorite thing about dev: Flexibility is a double edged sword. It is easy to do quick modifications to make a software design do something it was not intended to, introducing unintended consequences.
  • Tdd knowledge: Read the book "Test Driven Development for Embedded C"
  • Why are you attending: I want to reduce how often we are required to perform full system level testing, so small changes can be validated without requiring a large amount of effort.