Course code: WEB-29
Years with company:
Primary programming language:
Other programming languages:
Working on C++
Unit test harnesses:
None in practice - have seen Unity and GoogleTest
I'm a electronics and firmware engineer - I do a split of hardware and software work, the software stuff has come in more in the last 3 years. I also do quite a lot supporting DevOps activities in the teams.
Test practice now:
Verifying behaviour using memory-watching while stepping through (with code running on the target), logging trace events, and functional system testing on the hardware.
STM32 Cortex-M devices (M0 through to M7). Starting to work with Espressif ESP32 devices (Xtensa core).
IAR Embedded Workbench, VS Code and CLion for IDE / text editing etc.
GCC and IAR compilers.
Segger J-Link, IAR I-Jet hardware debuggers.
Be consistent and fit in with what you observe of the standards already in the codebase. We don't have anything formalised!
Function too long:
When I can't keep track of the mental model of what's going on anymore, or it becomes obvious that the function is handling more than one job.
We peer-review design documents as part of our process. Code reviews are initiated by the code author when they feel its needed (which happens for maybe 10-25% of the code).
Favorite thing about dev:
It's open-ended, there's the opportunity to be creative. There's a craft to it - you can go a long way further than having code that functions as required, and have code that is transparently written, reusable and efficient.
Least favorite thing about dev:
It's open-ended, and the number of techniques, design patterns etc can be overwhelming!
It's hard to estimate time.
It's hard to estimate how powerful the target CPU needs to be!
It's an extreme programming concept. It's related to but not the same as unit tests. You write a failing test first, then make it pass.
Why are you attending:
I want to get a practical start in writing unit tests, and get better at preventing bugs. If the process of TDD is a good way to do that, I'm up for it!