Course code: SP-CPP-3
  • Years with company: 3
  • Years programming: 4.5
  • Primary programming language: C or C++. It varies.
  • Other programming languages: Assembly(device specific), Python, C#, JavaScript, TypeScript, Markdown, LaTeX
  • Unit test harnesses: Ceedling and GoogleTest
  • Something else: I enjoy making things in my free time, Whether it's baking, cooking, knitting, modeling and 3D printing, soldering, or writing microcontroller code.
  • Test practice now: Depending on the project, either with Ceedling or GoogleTest for unit tests and Python for tests that interface with hardware.
  • Target system: Usually a microcontroller that's either running FreeRTOS or a custom Linux image built with Yocto.
  • Dev tools: Atmel/Microchip Studio, VS Code, PuTTY, CMake, hardware JTAG debuggers, GitHub Copilot or ChatGPT
  • Build time: 1-5 minutes
  • Coding standard: We don't have a formal standard at the moment. I mostly follow what I was taught in college.
  • Function too long: When there are comments labeling chunks that could be moved into their own function calls.
  • Code reviews: We create pull requests and if a reviewer flags an issue we discuss it, though issues are rare.
  • Code time: 25
  • Test time: 25
  • Debug time: 50
  • Favorite thing about dev: Problem solving and being able to make computers do anything, with enough thought and creativity.
  • Least favorite thing about dev: Banging my head against a wall chasing down bugs for hours at a time.
  • Tdd knowledge: It's a method of writing software to be easily tested & write tests, to reduce time spent debugging.
  • Why are you attending: To learn how to structure code to be tested and how to set up and write tests.