Course code: WEB-14
  • Years with company: 3
  • Years programming: 5
  • Primary programming language: C
  • Other programming languages: C++, C#, python
  • Unit test harnesses: Unity
  • Something else: I studied Electronic Engineering in England before moving to Germany to begin work as a Field Application Engineer. I then changed my role to become Embedded Software Developer for the same company. In my spare time I enjoy running, cycling and skiing.
  • Test practice now: Unit testing after implementation
  • Target system: Low power, embedded, Arm-core microcontollers. Typically M0.
  • Dev tools: IAR, Keil, SVN, Unity, Jenkins,
  • Build time: 31-60 seconds
  • Coding standard: We have a coding standard with a list of guidelines/rules for writing code. This was created within the team and reviewed as necessary.
  • Function too long: When the function does more than one thing. When it's difficult to read/understand. Too much scrolling. Difficult to unit test
  • Code reviews: Code reviews are requested using Review Board. They are done within the team. Not really enforced, it's the responsibility of each team member to request a code review.
  • Code time: 50%
  • Test time: 25%
  • Debug time: 25%
  • Favorite thing about dev: Creative. Challenging. Solving problems. Always ways to improve and learn.
  • Least favorite thing about dev: Often a difference between how I would like things to be done and reality. Planning accurately is very difficult!
  • Tdd knowledge: -Tests are written before implementation -Interfaces must be well defined -Code is written to make the unit tests pass -Tests should be executed automatically and continuously. -Changes to the interfaces require the tests to be updated.
  • Why are you attending: We decided in our team that we would like to move towards test driven development. We want to do it correctly.