Programming internships are excellent experiences for anyone considering entering the software industry. They are “mini-versions” of full-time software development roles, and the projects interns are assigned are constrained only by the summer time frame—in other respects, they are real projects that a new developer (or even an experienced developer) might work on. A student’s finished product might be shipped externally as part of a larger piece of software, or else used internally at the company after the student’s departure. In this sense, a programming internship is the real deal.
It’s worth pointing out that, depending your previous programming experience, you may find “real world” programming a bit alien. Unlike in COS 126, 226, and 217, where style is emphasized, you’re likely to need to deal with poorly documented, non-modular code. One way to make the change less shocking is to take COS 333 (Advanced Programming Techniques) before taking on an internship, though it is by no means a prerequisite. We’re telling you this not to deter you—hundreds of students make the transition every year—but just as a heads-up.
The software industry is huge, and many internship opportunities exist. One of the simplest ways to connect with one is to attend the yearly career fairs, where industry giants come to Princeton to hire students, both as interns and as full-time employees. These events are advertised through several listservs, notably the one maintained by Career Services. (You should subscribe to it if you’re going for any kind of industry internship, whether programming, finance, or something else entirely.)
Finally, if a software development job is your long-term goal—or a possibility—you should definitely spend at least two summers at programming internships. This will give you useful experience, helping you decide if software engineering is what you really want to do, and it will serve as a crucial stepping stone to the full-time position you will be pursuing after graduation. To put it frankly, internships are not only useful for the actual experience, but also for your resume, which plays an important role in the job market.
Contact: Ilias Giechaskiel: igiechas@Princeton.EDU