Course code:
CIRQ-1
Years with company:
Almost 2
Years programming:
12 years
Primary programming language:
C
Other programming languages:
C++, C#
Unit test harnesses:
AceUnit, VisualStudio's C# unit test, a little CppUTest
Something else:
I grew up in Spokane, Washington. I graduated in Electrical Engineering with an emphasis on embedded systems. I minored in Japanese. My wife and I just had a baby girl last week.
Test practice now:
I have been a proponent of unit testing, but never had a clear framework or training on how to go about it. Since working at Cirque, I have been starting up a new repository that was meant to be flexible and the only repository of our code. To make that more manageable, I've been writing unit tests all along whenever I ported something to this repository.
Target system:
Chiefly embedded micro-controllers
Dev tools:
Visual Studio, Kiel (ARM-based projects), Various versions of Eclipse as put out by microcontroller vendors.
Build time:
31-60 seconds
Coding standard:
We have a standard for look-and-feel (naming conventions, brace placement, etc.) to keep the code readable.
Function too long:
Good question. We haven't gotten that far in our coding standard
Code reviews:
We use the Atlassian tool Crucible to manage code reviews for non-trivial changes.
Code time:
55% (including planning/diagramming)
Test time:
30%
Debug time:
15%
Favorite thing about dev:
I like having a problem to solve given the constraints of a system or product, whether that is a product feature or a requirement of how the code needs to be structured. I like the idea of driving efficiency and making things make sense.
Least favorite thing about dev:
I don't like repetitious work unless it is a one-time thing.
Tdd knowledge:
I've read your book, but had a little bit of programming experience and training on it before, but never stuck to it. I get the basic pattern down, but all the related principles, like code-smells and SOLID, haven't become ingrained yet.
Why are you attending:
I'd really like to learn TDD well enough to keep the practice going. However, I also want to be able to help classmates so everyone keeps using it as a useful tool.