Course code: VIAVI-2
  • Years with company: 12
  • Years programming: 15
  • Primary programming language: matlab
  • Other programming languages: C/C++ Python
  • Unit test harnesses: google test
  • Something else: I would prefer not to
  • Test practice now: Badly. We have Overnight regression tests, but code/feature coverage is very patchy, and bugs frequently get through to released code. Test are normally only run on main branch, so bugs are often not detected until after code is merged this makes re-working code to fix things slow and difficult. Module level testing often tests functions in a way that is not representative of the way they are used in released code. Often a lot of testing done by the developer does not end up in regression tests
  • Target system: Windows/PC
  • Dev tools: Matlab Visual studio GIT/Bitbucket JIRA
  • Build time: Under 10 seconds
  • Coding standard: We have a company C/C++ coding standard that defines naming conventions and gives guidance on how to structure code. It is not always followed by our team. We do not have a coding standard for Matlab (We try to put headers on files/functions)
  • Function too long: Not sure :- If the function can be broken into sub functions in a logical way then it probably should be, as this will make the code easier to understand
  • Code reviews: We carry out code reviews when anyone merges code onto the master branch. It is often difficult for the people reviewing the code to understand the feature (or the code)
  • Code time: 30
  • Test time: 35
  • Debug time: 35
  • Favorite thing about dev: Developing algorithms, problem solving, simplifying complicated things, elegant solutions.
  • Least favorite thing about dev: Unclear requirements. Focus on (narrow) features rather than quality/efficiency/ maintainability of code, working to deadlines.
  • Tdd knowledge: Very little
  • Why are you attending: To learn about TDD. I am hoping TDD might help with the following: More rigorous testing of code. Making re-factoring/optimization of code easier. Faster development