Student Internships in Software Quality Analysis
Posted on 12/17/2014 by Dr. Elmar Juergens
This post is about student internships at CQSE. If you are studying computer science and are looking for a job specifically designed to help you get the most out of your studies, read on.
Studying computer science is time intensive. Lectures, lab courses, exams and thesis projects fill your schedule quickly. Choosing a side job next to your full schedule is a risky endeavour, since it competes for your time and can create painful conflicts of interest. Especially during exam periods.
Nevertheless, I am convinced that you cannot get a complete software engineering education, if you don’t spend some of your time outside of the university. Real world software development experience shows you problems (and solutions) first hand. My own jobs as a student motivated me to seek out lectures that targeted the problems I encountered, and allowed me to experiment with newly learned approaches. These lessons were much more thorough and motivating than lectures or lab courses alone.
However, whether or not a side job enriches or endangers your studies depends on the characteristics of the job itself. Most importantly, it needs to provide rich feedback and be procrastinatable. This post describes how we designed our student internships along these criteria.
Feedback Through Code Reviews
What you work on determines what you learn on your job. To provide the best learning environment, interns work on development tasks for our software analysis tool Teamscale. Every single change to its code base passes a thorough peer review process—as many times as necessary to achieve very high quality. From our eight years of experience, receiving (and later writing) reviews is the most effective way to learn how to become a great programmer.
No Hard Deadlines At All
Your studies come first. Consequently, it must be possible to drop your work on Teamscale for weeks or months, if your lectures or exams require your full attention. Even on short notice. For our internships, we take two measures to make sure this works: First, the tasks you work on are, while important for us, never time-critical. If we need a feature for the next release or for a customer project, then it is probably not the right task for a student intern. Instead, we focus on features that are required in the long run. Second, the schedule is flexible and both overtime and undertime get tracked transparently. You can thus work in advance or catch up with your hours later. Your payment arrives monthly, however, since your costs of living are due monthly, too.
Student interns have the same priviledges as full time employees. This includes office keys, hardware & software, a workplace, free fruit & drinks (including Club Mate, coffee, tea) and other perks. And you are obviously invited to all company parties :-)!
An internship starts as one month of full time employment during the lecture-free period—it is more efficient (and more fun) to climb the learning curve full time. After that month, schedules are completely flexible. Some students work only during lecture-free periods. Others work 8-12 hours per week next to their lectures. We impose no constraints here and have enough work for everybody ;-) Typically, this changes for each intern for each term.
Looking for a Bachelor’s or Master’s Thesis?
Many of the topics we want to work on are in new fields of research. We thus always have Bachelor’s and Master’s thesis topics available. Simply contact me for details. We have a lot of experience in supervising thesis projects. I keep a blog with thesis advice here. Since we are still well connected with TUM, you don’t have to go looking for a university supervisor yourself.
Get A Job!
Our internship program is one of our main means of recruitment. There is no better way to find out if you would like to work at a company (after you finished your studies) than to have worked there as an intern. And for us, there is no better way to find out that you are a good fit for us and we would like you to work with us after finishing your studies.
Interested in the internships? Simply drop me a mail (email@example.com). I’m looking forward to hearing from you!