Context
This blog post is inspired by a recent event at my University where I was featured to share about my internship experience.
For background context about myself, I am an international student in Australia, interned at a large Australian company as an application developer for 7 weeks. I had worked on a full stack codebase for an ERP software.
Where was I before I landed it
I started looking for an internship around the middle of my second year. I had missed the window for the university’s freelancing hub to apply and complete my mandatory internship unit for my degree. I was frantically applying to many openings from LinkedIn, Seek, networking events etc.
I had my resume which included side projects that had 100+ users, clubs and societies I contributed towards.
I had 3-5 online interviews for a software developer position before finally getting accepted to get one.
How I got my internship
A friend was doing an internship at a company in the final semester of the school year, and I was supposed to get an internship in the semester after.
I passed my resume to him and he helped forward it to his supervisor. I was then instructed to follow the usual procedure of applying through the application portal and include a Me-in-a-minute video where I introduced myself briefly.
One day, I received a call from a random number. Feeling bored, I picked up, and I was surprised not only did they know my name, but also knew my friend. I later connected the dots from which company I was called from (I couldn’t hear the first part of the call).
We booked a video call, I had a short behavioural interview, and a relatively simple technical interview. Before I could even finish writing the code for the technical interview, I was told on the spot of the video interview that I succeeded in getting the internship!
Day in a life as a computer science intern
First week
The internship was on-site. On my first day, I wore a collared shirt and a tie. I entered the building and said it was my first day. Reception redirected me to a HR person who showed me around.
Later, my supervisor and I met and he showed me the office, introduced myself to colleagues and vice versa, and showed me where the fire exits are as a safety precaution.
I received a temporary laptop because my actual work laptop was delayed. With the laptop, I practiced setting up my developer environment and watched mandatory training videos.
Second week
The next Monday, I had just entered the office, I greeted my supervisor as he came by my desk. He asked if I had checked my emails, to which I haven’t as I had just arrived to the office and was continuing setting up my developer environment (it takes others a while to set it up too).
According to the Email, due to issues, we had to move from working on-site to work from home starting the week after. As a result, I receive another invite to join another stand up meeting despite not being part of that sub-team.
Average day at work in the office
At my internship, I interact with technologies that are not entirely familiar to myself, especially when it came to large scale database indexing.
The average day includes receiving Jira tickets, use git branches, read from documentation and documenting my commits.
The company only allowed certain software to be downloaded, which included Cursor and VS code.
Employees are not discouraged from using AI. I use it to allow myself to understand the codebase better, and let it point out which file should be edited for a certain part of the app.
Using composer 2, it manages to complete the task. However, upon code review, many mistakes were pointed out by the senior dev and my mentor. They patiently gave me guidance, and I learn what the company procedures are when making changes to the codebase, including database migrations and writing documentation.
Average day working from home
Working from home has many benefits. I don’t need to wake up as early to go to the office, I can make breakfast while working.
I suspect I have ADHD, so my Brick device help hold myself accountable as it introduces a barrier from me accessing Instagram, Tiktok and other unproductive apps.
I also forget my employee pass sometimes, and working from home made it not a worry.
Last Day
On my last day, I was tasked to present what my company experience was like and how I found it.
On my Canva slides, I included my onboarding experience, what I did from week 1 to week 7 and the codebase changes I made. I was told beforehand that some people in the call may not be technical, and to not go full blown technical for the audience.
In my slides, I included not only the contents of my 13+ merged pull requests, but also pictures from hanging out with coworkers outside of the office for badminton, bouldering and eating Korean food.
I also had included memes like Obama rewarding himself, and some pain points of Javascript explained in layman terms.
I presented to a few people present in the office (different area from the office building from my first week) and to people online as well. Apparently, there were more than 50+ people as it took a while for everyone to leave the Teams meeting.
After I finished my presentation and concluded my internship, I stayed and chat with the people, and heard from my supervisor about comments such as “Wow Ryan seems cool, I had no idea he was here and now I’m sad to hear him go :(”.
I also received heartwarming messages from colleagues about my departure, and got invited to their discord server so we could keep in touch and play games together!
Team Bonding
It started when I overheard conversations in the lunch room about badminton. I asked about it, showed interest, then was invited to it! It was a farewell to one of the coworkers who had previously mentored interns.
Since then, I’ve also participated in other hangouts to do badminton and bouldering.
After my departure, I joined their Discord server and played Meccha Chameleon with them!
Final Thoughts on my internship
The internship was unpaid but valuable. I would not doubt that I could get a call back from the company if they had the budget to hire me and sponsor my visa.
To Junior IT / CS students
What would I say to other people looking for internships?
Have critical thinking
Stop lending your thinking to AI, do things that would keep your brain alive, such as building your own projects without AI or tutorials, or practice leetcode while considering scalability and Big O Notation.
Specialise in one area first
People can claim to know how to do frontend, backend, DevOps, App development, data science… but don’t have a preference in one, thus becoming a master of none.
Specialising and focusing on one area is a better look on your resume when a company is trying to hire. This includes full stack developers, who would typically have a preference between frontend or backend.
Show don’t tell
Show off what you can do. Post to Github, LinkedIn, other social media platforms to showcase what you have built, what you built it for, and what you’ve learnt.
You can even achieve this by posting blogs, posting videos, host workshops etc.
People can write that they know Kotlin on their resume, but being the one able to show off a Kotlin app and able to understand the programming paradigm of it clearly shows that you are more knowledgeable and hireable.
Expand your “net”
The net is a metaphor for catching opportunities. Some people may be able to catch luck with smaller nets, some may struggle to catch despite having a larger net. However, it is generally easier to catch luck with a large net.
To expand your net, you can network, show off your work, join club events, market yourself and be known to people who may give you opportunities one day.
Questions
Should I apply for internships in my second year or wait until my final year?
This answer really depends how confident you are in your current skill set for the industry.
Some students in their second year are more well-equipped than others. To the students who aren’t confident in your skills yet, you can focus on your units and education first, and possibly work on side projects to put on your resume.
Some students would prefer to get an internship for experience early on, some want to get the internship unit over with earlier and not stress about it in their final year.
What are the elements to getting an internship?
This is usually the checklist:
- A good resume
- ATS friendly
- Good projects
- Good skills
- Good grades
- Experience
- Previous internships
- Freelancing
- Capstone
- Good impressions
- Business formal for interview
- Smart Casual for networking events
- Wide / valuable network
- Tech networking events
- Tech clubs and societies
- Technical interview skills
- Large companies such as Google would require stronger technical interview skills
Note: completing this checklist does not guarantee internships. Luck plays a significant role.
Isn’t the tech job market pretty bad right now? Especially in Australia?
Well… yes.
However it’s still possible especially if you have the passion for it.
The average CS / IT students in this AI era are most probably letting AI do their work without any critical thinking whatsoever. If you are even just a bit better than that, you still have hope.
Final Thoughts
I was very lucky to have landed my internship. I also acknowledge the effort I had put behind it, including doing projects, taking initiatives, networking and constantly working towards improving myself in my career.