Course code: WEB-18
Years with company:
Primary programming language:
Other programming languages:
python, C#, c++
Unit test harnesses:
python unittest, ceedling/unity (for C)
Went to school for electrical engineering, but found towards the end of school that I liked programming more than the core EE coursework and enjoyed the programming work I intermittently got to do on co-op, so after my first job, wanted to transition to embedded programming.
Test practice now:
A combination of unit testing and manual testing, with manual being more common.
Avr 8 and 32 bit systems, and embedded linux
Atmel studio, pycharm, visual studio code, visual studio, yocto.
Company doesn't have any formal coding standards, but I try and make sure the code is consistently formatted, descriptively commented and the comments accurately reflect the code/intent. Code has unit tests written for critical/complex portions.
Function too long:
If a function starts making more than one or two levels of decisions, especially if they are not closely related.
Code reviews are rather informal and mostly involve demoing the working firmware to colleagues.
Favorite thing about dev:
I've always enjoyed working with computers, Its creating something new, though the math involved tends to be a little less arduous than required be EE, which is what my formal training is in.
Least favorite thing about dev:
Working on poorly documented/commented software written by someone no longer at the company.
TDD got its start in higher level weakly typed languages like java script, but has been moving into more parts of the programming world.
Why are you attending:
I don't have any formal training for writing unit tests (or all that much formal instruction for programming in general), but feel it would benefit me to better learn the tools and theory behind unit testing and TDD.