Hi @dkulkarni. Thanks for the question! It’s really great to hear that your company is running an internship program. I’m really passionate about the subject myself.
I’m the Junior Engineering Program Lead at Culture Amp, and we just ran our first ever program from November last year until June this year. We’re about to kick off our 2nd one in January next year.
I wrote up some blog posts about the process that you might be interested in reading:
A lot of the information here is about supporting the juniors and making sure they’re encouraged and supported to be the best versions of themselves.
The JEP at Culture Amp runs for 6 months and the juniors are employed on a full-time on-going basis from the start. We intend to keep them.
At Culture Amp, we have a Growth Framework which outlines the competencies we would expect different levels of engineers to accomplish. As an example, here’s what we have in our Growth Framework’s Engineering Track, under a category we’ve called “Technical Communication”:
Junior: Asks good questions about technical concepts, can clearly identify what they understand and what is confusing.
Mid: Can explain their technical work in detail, including the context and their choices. Demonstrates understanding of standard technical terms and uses them for clarity in their communication.
Senior: Can explain complex technical concepts and system designs clearly. Helps the team to use common language around technical concepts. Uses a variety of tools and methods to communicate e.g. diagrams, whiteboards, pseudo code.
Lead: Maintains a high level overview of the system, and is able to communicate it. Can zoom from out at the high level down into the details at the right time for their audience, and communicates technical details clearly at all levels.
This is a pretty broad-spectrum, covering people with a few months of experience up to a decade-plus of experience but hopefully this gives you a good idea of how we might grade people at CA. Of course, this isn’t set in stone and can be adjusted as we gain more data – we watch people grow and see which paths they take.
For your internship, you have a good chunk of time to get to know the people who are going through it. At the start of the program, set some goals of where you expect them to be after 12 weeks. You might have some ideas of where they should be if you’ve ran the program already.
During the program, take some notes on when you feel people hit particular milestones that are crucial to the goals. At the end of the program, review the progress that your candidates have made and compare that against your expectations. From there, you should have a pretty good idea of whether or not to keep that intern.
I would suggest compiling something similar within your organisation. Discuss and find out what you expect someone with 12 weeks of experience to be capable of. Evaluate this at the end of each program and see if it’s reasonable, and adjust if your expectations are off from the reality.