Course code: HUNT-1
Years with company:
Primary programming language:
Other programming languages:
C++, C#, VB.NET, Perl, Python
Unit test harnesses:
NUnit, ApprovalTests, Microsoft Unittest Framework, Specflow, CodedUI.
DSP and firmware background. Ventured into application programming Dec 2015 with Hunter.
Test practice now:
C# is my current language. For this I'm using TDD, BDD and above mentioned test harnesses.
Desktop applications. Previous work on ARM, TI's TMS320C54x,C55x series and Qualcomm's QDSP5 processor.
Nowadays primarily Visual Studio.
Learning coding by intention and clean code. Moving away from background in waterfall schedule driven "cowboy coding" which typically leads to spending more time debugging than implementing/designing/refactoring.
Function too long:
When its beyond a page or when it's serving multiple purposes (SRP)
On-the-fly - we discuss in the mob while coding.
Favorite thing about dev:
Creative thought process and ever changing environment. Continuous learning.
Least favorite thing about dev:
When I have to debug code written so poorly that I have no clue what's going on. This typically leads to too much time spent on debugging leaving the feeling nothing has been achieved.
TDD in C#. Code by intention. Write failing test first, make it compile and run. Implement functionality under test until pass. Ensure before a change that key functionality is under test. Then refactor "on green" only.
Why are you attending:
Clean code and legacy code refactoring mostly deals with OOP. How to make proper test harnesses in C, mocking HW and external dependencies in C. How HW deals with agile as HW ties to production lines(a slot time) => waterfall model => FW devs.