Course code: WEB-30
  • Years with company: 0
  • Years programming: 5
  • Primary programming language: Python
  • Other programming languages: Mostly C and Java, however I have also done a little C++.
  • Unit test harnesses: I have some minor exposure to CppUTest through my internship. In addition I have some minor experience with the python unittest framework through my internship.
  • Something else: I am a recently graduated computer engineer. In addition to my interest in embedded systems, I am also very interested in machine learning and artificial intelligence. Outside of engineering I love playing sports, and the outdoors.
  • Test practice now: For most of my personal projects I do not employee any unit testing currently.
  • Target system: I do not have a specific target system.
  • Dev tools: I use visual studio code for all python programming. I use gcc from the command line and visual studio code for c programming.
  • Build time: 31-60 seconds
  • Coding standard: I do not use a specific coding standard for personal projects. But I do use autopep8 for consistent indentation in python projects. In addition I use CamelCase for larger projects.
  • Function too long: Generally I would say a function is too long if it does more than a single thing. So maybe we are writing a function to do something numerical, and part of that is matrix multiplication. There should be a function that does ONLY matrix multiplication
  • Code reviews: During my internship there was a CI/CD pipeline on our gitbucket server. Each time a push was made it would run all the tests and then you could review any code changes. The whole team reviewed all pushes to the repository at the end of each day.
  • Code time: 6
  • Test time: 1
  • Debug time: 3
  • Favorite thing about dev: I like software engineering because I think there is a creative aspect to it. I enjoy STEM topics and I am also pretty creative so I like how sometimes software engineering can combine those two aspects.
  • Least favorite thing about dev: I do not like the fact that sometimes programming involves spending incredibly large amounts of time debugging code.
  • Tdd knowledge: My understanding is that tdd shifts the process from starting with writing a function and then writing a test; to writing the test first and then writing the corresponding functionality. Using some tdd made finding errors easier during my internship
  • Why are you attending: I am attending the training class because it was offered to me, and I am interested in the subject matter. I found the tdd method useful for team programming efficiency during my internship and I would like to learn more about the methodology.