I had decided early on to take a gap year after high school, and one of my goals was to complete a software internship. In December, I sent out a few hopeful resumes with no experience other than some demo projects on Github. I was surprised when a response came back, requesting an interview. Then another. A week later, I had landed my very first job at a web/app development agency.

My first task was to create an alert modal for a mobile app, and I had no idea where to start. I knew the basics of Javascript but have not used a framework such as Angular or Ionic. The only way I was able to write new code was to find a similar function somewhere, copy it, and modify it.

All of the web projects used an API endpoint library that the senior developers had created. It was the most difficult to understand. To make sense of what it was doing, I global-searched functions and followed them deep into the codebase.

Frontend web development was only the beginning. It was not long before I was given some backend tasks to do, and I had never written a line of Ruby code. Though I was given a tutorial book to read about database operations, it became apparent that the fastest and most engaging way to learn was by trying to understand existing code.

As things gradually fell into routine, five months passed by before I knew it. I was now able to complete tasks that I used to find impossibly challenging. At the start, I would choose tasks based on how easy they seemed, but now I picked them based on how interesting they were.

Takeaways


I learnt how to maintain focus.
This was my first job, and I was not used to this kind of intense programming for eight hours a day. During this internship, I had built up stamina and could now maintain focus for long periods of time. This helped tremendously in the next internships and during college.

I optimized my coding workflow.
Since I was spending so much time in the code editor and terminal, I put in the effort to customize every part and memorize as many shortcuts as I could. It was worth it. I became much faster at navigating code and getting to whichever file I needed. After three years, I'm still using the same code editor (vim) and its plugins.

It's ok to ask more questions.
I was concerned that I would come across as a total beginner if I asked too many questions. In the end, I learned that it was perfectly fine to do so, being an intern.