Course code: WEB-35
  • Years with company: 2
  • Years programming: 14
  • Primary programming language: C
  • Other programming languages: C++
  • Unit test harnesses: CppUTest, GTest
  • Something else: I like collaboration instead internal competition
  • Test practice now: unit-tests, integration-tests
  • Target system: medical embedded devices
  • Dev tools: VS-Code, Docker, gcc (cross compiler), gdb debugger, git, microsoft azure for change management and continuous integration
  • Build time: 11-30 seconds
  • Coding standard: MISRA 2012, using internal coding guidelines
  • Function too long: when the body of the function could be easily split based on the separation of concerns principle or when the function is not easily unit-testable
  • Code reviews: one reviewer, using pull-request workflow
  • Code time: 50
  • Test time: 30
  • Debug time: 20
  • Favorite thing about dev: clean design, modularized, automatic testing for continuous integration
  • Least favorite thing about dev: reverse engineering spagetti code; long feedback loops for (test) results
  • Tdd knowledge: the philosophy of writing first the test cases before the implementation and having the corresponding tests for the implementation which locks a module functional behaviour, making then easier to change without being afraid of introducing regressions
  • Why are you attending: I want to have a proper reference of what TDD means and which news and advantages brings, including the practices on what is the best way to apply the TDD theory.