Course code: WEB-32
  • Years with company: 1
  • Years programming: 22
  • Primary programming language: C#
  • Other programming languages: JavaScript, Python, Java, C, C++
  • Unit test harnesses: XUnit, NUnit, JUnit
  • Something else: I like to learn new things. I like to improve my skills and find better ways of doing things.
  • Test practice now: Still rely a lot on compiling the whole application and then testing the changed functionality by hand. We have some unit tests, but not enough to exercise all of the functionality.
  • Target system: Split between web apps and cross platform (Windows/Linux) desktop applications that process SAE J1939/J1708 vehicle diagnostic messages.
  • Dev tools: Visual Studio Code (Linux and Windows), Notepad++, Git/BitBucket, Jira
  • Build time: 1-5 minutes
  • Coding standard: No real coding standard in place. Attempts have been made to create one but there is often disagreement on what requirements should be in the standard.
  • Function too long: It's probably too long when it exceeds about 100 lines or the control structures are nested more than 3 or 4 levels in.
  • Code reviews: Code reviews are required. They tend to be done individually by reviewers using BitBucket pull request functionality. Sometimes I think too little time is spent and issues get missed.
  • Code time: 70
  • Test time: 10
  • Debug time: 20
  • Favorite thing about dev: Challenging and satisfying (when things work!) Creative outlet. Don't need a lot of physical space and tools. It automates repetitive and mundane tasks in a repeatable way.
  • Least favorite thing about dev: Tendency for everyone to want to test software as a whole application instead of building confidence through testing parts and integrating. We don't do this when we build cars (and for good reasons). Why software?
  • Tdd knowledge: Basic knowledge from reading on the topic. "Write tests before writing code."
  • Why are you attending: I know about unit tests and I think I know what TDD is all about but I'd like a more formal introduction. I don't like that most testing is focused on application level testing only.