Course code: CIR-1
Years with company:
Primary programming language:
Other programming languages:
Unit test harnesses:
PyUnit, JUnit, Embunit
I started my career as a test engineer, testing device drivers and firmware.
Test practice now:
Existing unit tests, compliance tests, manual execution.
Embedded ARM Cortex
Keil, Git, Sublime
ISO C99, ARM CMSIS Compliant with ANSI C and C++. Variables and parameters have a complete data type <stdint.h>. ISO C-99 + gnu extensions (where appropriate) (i.e., gnu99) compliant. Conforms to MISRA 2012, but not MISRA compliant.
Function too long:
When you can't see all at once without scrolling. When it contains blocks of code that are used elsewhere. When it contains blocks of code that could be useful elsewhere.
Gerrit code reviews among team members. Need a "+2" and passing unit tests to merge. Most developers can give +1, except for admins.
Favorite thing about dev:
Solving problems. Debugging (figuring out why something doesn't work). Reviewing other's code to learn how other people think and solve problems. Designing clever or elegant solutions.
Least favorite thing about dev:
Deadlines, estimates, Agile. Poorly documented code, processes, tools, tests. Buggy tools that slow development. Lacking tools / debug features that would ease debug/test of code. Overbearing static analysis rules. Code coverage for its own sake.
It can help break down the problem into manageable pieces and make it easier to test. Helps to ensure that all important aspects of the solution are tested appropriately. Has a reputation for being difficult to do in embedded projects.
Why are you attending:
To learn how to best design unit tests for embedded projects. To become convinced on the value of writing unit tests so that I will do it more often. To have the chance to travel and meet colleagues from other offices.