Course code:
CIR-1
Years with company:
1
Years programming:
5
Primary programming language:
C
Other programming languages:
C++, Python, Java
Unit test harnesses:
Just the ones within Cirrus Logic
Something else:
Started my career in a start up building bluetooth smart mouth guards. Train for American Ninja warrior in my free time.
Test practice now:
Using Logic Analyzers to monitor proper execution, Unit tests to look at modular code, ...
Target system:
I work on ARM M0+ and Arm M4 (+ possible bluetooth SOC) devices. Some of my projects also involve system tests involving a host pc or smart phone app.
Dev tools:
Keil, Jlink, Salea Logic analyser, WireShark, MCUXpresso
Build time:
11-30 seconds
Coding standard:
Cirrus has a coding standard that I follow: Ending names with _g if they are global, no trailing white spaces,...
Function too long:
100 lines is a general rule I follow. If I'm making a state machine where each state might consist of several lines, I'll usually break that up into each own function.
Code reviews:
Most of my reviews are on small features or patches. I tend to focus on readability and correct logic. There's much to the part that I'm still understanding so, this is what I focus on.
Code time:
50
Test time:
20
Debug time:
30
Favorite thing about dev:
I like bringing things together that make an impact in the real world. Writing firmware gives me this joy.
Least favorite thing about dev:
Sometimes it may be difficult to get information on parts of code outside of your project. (Blockers rather), In addition, sometimes the build system generates erroneous warnings/errors.
Tdd knowledge:
I've read and skimmed different sections of the book. Not mastery in any sense of the word.
Why are you attending:
I do a lot of development outside work that integrates embedded systems with different systems. I'm still hacking things together. This could serve as a good basis to improve my development processes.