Course code: WEB-23
  • Years with company: 10
  • Years programming: 16
  • Primary programming language: C
  • Other programming languages: Java, C++, C#
  • Unit test harnesses: CppUtest, googletest, aceunit
  • Something else: I love to make things easier, more efficient and more fun. I like sharing my skills and knowledge and seeing people improve in all areas of life.
  • Test practice now: * TDD unit testing for small well defined functionality. * Using a software implementation of the hardware abstraction layer.
  • Target system: Hardware Security Modules of various brands and different CPU architectures with down to 1MB RAM. The same code has to work on all platforms, therefore all code is written in C.
  • Dev tools: Visual Studio, IntelliJ IDEA
  • Build time: 5-30 minutes
  • Coding standard: We are in the process of developing some common code guidelines. Before, the primary focus has been on making readable code that clearly signals what is going on. In addition some unwritten rules about how to program defensively.
  • Function too long: When it is hard to give it a concise name that describes exactly what it does and nothing more.
  • Code reviews: Code reviews should make sure: * The intended task has been done and that nothing is missing * Relevant tests are present * The code is: - Secure and follows guidelines - Easy to understand - In the right place - Better than it was before
  • Code time: 70%
  • Test time: 20%
  • Debug time: 10%
  • Favorite thing about dev: Solving problems "automatically" or more efficient. Seeing new functionality work, seeing something run faster. That I can make working with something feel good/better.
  • Least favorite thing about dev: Sometimes you are forced to create solutions that you are not proud of.
  • Tdd knowledge: I did the TDD online course some years ago and have been teaching the rest of the team some of the principles.
  • Why are you attending: To refresh my knowledge on TDD and because I want the team to have a common understanding of the principles and values of TDD.