I had an interesting conversation with my youngest son
yesterday as he begins his search to obtain an internship next summer. He told me
that last year as a freshman that he had gone to several on-campus events with
employers to talk about internships. He recognized as a freshman he probably
wouldn’t qualify, but wanted to establish connections with potential companies
and learn what he needed to do to prepare for internships. He approached each
companies recruiting team with the same story – talking about how many computer
classes he had taken in high school, what types of apps he had already created
in and out of class, how he had already taught himself the basics of machine learning
and the programs he had created utilizing machine learning. At the end of each
conversation he asked a simple question – what else could he do to be attractive
candidate to be offered an opportunity to intern with the company in question.
The response he got from most companies that were attending
the job fairs was what floored me, “If you had other internship positions prior
to applying with us, that would make you stand out.”
Huh, what?
Let’s discuss what
the purpose of an internship program is as defined by the Oxford dictionary:
- The position of a student or trainee who works in an organization, sometimes without pay, in order to gain work experience or satisfy requirements for a qualification
I tell students that I meet with that our internship program
is to align with what they are learning in the classroom. To give them
practical hands on experience with concepts that they are learning and to expose
them to what being a developer means so that they are prepared when they enter
the job market as a graduate. Here’s where they will learn things that they don’t
tell you in school (list below is not meant to be an exhaustive list of what
they will do):
- Design Documentation
- Tagging and Merging Code
- Unit and Integration Testing
- Implementation Planning and Execution
- Implementation Validation
- Defect Management
I’m happy my son has chosen to obtain a four year degree
because of the specific type of software development job that he wants to get when
he graduates. But, I’m all for students getting the necessary experience in
high school and then entering the workforce as an entry level programmer.
Alternately, there are great 2 year programs offering Associate Degrees thru our
Community Colleges that get students work ready to enter the job market and be great
developers.
I have offered internships to high school, community college
and traditional four year college students. They, for the most part, have all
been able to join my teams and be effective developers.
Don’t ask students to already have completed internships,
ask them about what drives them, what have they already done, what are they
doing outside of the classroom that proves that they have the passion to
develop great software? What experiences have they had working on a team project
– either in school or with friends? What experience do they have in resolving
conflicts within a team project? What kind of a student have they been – where have
they gone above and beyond what was expected in assignments? What type of
relationships do they have with their professors?
Stop finding a way to say no and find a way to give hungry
students opportunities.
If you'd like more information on my background: LinkedIn Profile