My software internship at Apple, and how to make the most of yours!

    Posted on Wednesday, Feb 27, 2019
    An internship, one might say, is a courtship period with the company before a long term commitment. It's like an interview, the only difference being that its twelve weeks long. Assuming the job describes what you see yourself doing after you graduate, the only thing that stands in your way to the full-time offer is a green flag from the team you'll be working with. And I can't stress this enough that a green flag is not equivalent to zero red flags. 

    Allow me to provide some context. After months of preparations and a bunch of interviews it was sheer luck that fetched me an internship at Apple ("How exactly?" more on that in a later post maybe). I began working in Santa Clara Valley, CA from May 2018 for a total of 14 weeks. I worked on pretty cool projects with the HD Maps team and met some really interesting people passionate for Cartography; and anything and everything around it. I did not receive an offer for full-time position from the team that I interned with. Now there are several elements at play here, each as frivolous as the next. And any one of them might tip the scales to either side. That being said, there are a few aspects of the job that you can influence and make a critical difference.

    If you ask me, an intern is judged on the following factors for a fit in the team:

    1. Intern Project: This is unmistakably the most important thing during your internship. That is precisely why you're there. Delivering on the job that you've been assigned, and doing well at that is definitely the first thing to check off the list. Imperative.

    2. Documentation and/or Presentation: Your work is as good as it is presented. Document all your findings, problems you faced along the way and how you fixed them. Keep your presentation methodical and succinct. A typical format, if not already outlined by your supervisor, goes like this - 

        a. Introduction
        b. Problem statement
        c. Previous implementation (optional)
        d. Proposed solution
        e. Implementation details
        f. Issues encountered and resolution thereof
        g. Future enhancement (what would you do differently given more time)
        h. Performance profiling data
        i. Results / Demo
        j. Your takeaway

    3. Work Ethic: Being assigned a project translates directly to taking on ownership. And with ownership comes responsibility. You are liable for laying time lines for your project (with consultation from your mentor, of course), and delivering on them. Keep your word. Make sure you are clear on what is expected of you and that you stay on track to produce said results (or a logically sound explanation for a failed experiment in case of research based internships). Pinning a time down for a project that spans over such a short amount of time is usually tricky. Unexpected variables may jump into the mix and may thrash your house of cards. Sometimes, the "under-promise and over-achieve" strategy bears good results. Use it with a grain of salt. Things don't always go as planned, and that is one of the things you are tested for.

    4. Communication: Sparing a few, most of the jobs require people to work as part of teams. And communication is key to relationships. As cliched as it sounds, it does for a reason. Getting your thoughts across and bringing in honest and constructive ideas to the table is highly valued as it demonstrates your thought process and may even be linked to your potential as a future contributor to the project. You are more than just the code you write. Get to know your teammates, you might end up spending a whole lot more time with them in the future. And this goes both ways. This is also how you figure if this is an environment that you'd enjoy being in day after day; if it enables your growth in career and personality; enables you to have a significant impact.
     
    These, according to me, are the most important factors that drive the success of your internship. I personally feel, more often than not, communication overlooked by the candidates thinking it falls beyond the technical, wrongly so. The company would rather hire an articulate candidate who can competently work out algorithms than a bot that spews out binary code.

    At last, have fun. What's the point of it all if you don't, right?

    As far as my experience goes, I don't remember the last time I had been happier. It was a great learning experience and some of the best days of my life. 


    --- Tushar Turkar
    Tushar Turkar is a Masters student in the Computer Science department


Search for a blog post

Defense Announcements

Upcoming Events