Last winter I challenged myself to put on my big boy pants and get a big tech internship. To aid in my job hunt, I polished up this here blog, did a machine learning course and wrote a sleek CV. I won’t actually show it here because I don’t want to dox myself, but I want to highly recommend this typst template. Typst is awesome, and anyone who writes technical documents should check it out.
I applied to around a dozen positions. Most just rejected me after a couple of days. For the remaining positions, I had to do coding assessments first. If you view these as practising leetcode with the bonus chance of landing a job, they’re not too bad.
The Interview
A few weeks in, I was invited to an hour-long online interview for an SWE (software engineering) internship at AWS Berlin.
How to prep for ✨the interview✨
I was surprised to find that interview taking is a learnable skill - for both the technical and the behavioral part.
- Have your story straight. You should be able to confidently answer questions like “When are you graduating?”, “What time are you available for the internship?” or “Why did you apply for this specific role?”.
- Amazon are dead serious about their leadership principles. The behavioral interview consists of a bunch of “tell me about a time” questions related to these principles. Exponent on Youtube gives lots of good example questions. Copy at least a dozen of these down in your notes and write out STAR answers for each one. Even if the exact questions asked in the interview might be different, it’s crucial to have anecdotes ready.
- Know your data structures. The technical part did not require any fancy leetcode algorithms. The whole task was about using arrays, sets, maps, dequeues and knowing their time complexities.
The interview went great - I felt well prepared and the engineer who talked to me was really nice. At the end, they told me I’d hear back from them within a couple days. Then I got no response. 💀
Or Did I?

After weeks of no reply, I sent out an email to the recruiter, not expecting much. To my surprise, they said my application had gotten lost over the easter holidays and ended up offering me the SWE internship spot.
The Job
In August, I began my 3-month stint as software engineering intern at the AWS billing department in Berlin. My team consisted of around a dozen engineers maintaining the subscription system. Basically, if you go to aws.com and rent an S3 storage bucket, my team’s API gets called to put this information into one (1) gargantuan SQL database.

Bought a tie and the manager said I looked like Jim from the office. Nicest compliment I’ve ever gotten.
During my internship, I designed and implemented an API for registering new services into this database at the right places - a process which had to be done manually before. I’m proud to say it was merged into production 😎
That means, as of late 2025, my code gets used every time AWS launches a new product. For example, Nova 2, a new AI model released this month, was (to the best of my knowledge) put into the subscription database by my API. It’s a small cog in a large machine, but I’m very pleased I got to implement something at such a huge scale.
What I Learned
Keep bugging people.
There’s no one there to take you by the hand and show you the next step. If you want to do good work or learn something, you have to constantly ask your colleagues for help. Luckily for me, all of them were really nice.
Disagree with your superiors.
The amazon codebase is enormous. If you work with one specific feature for a couple days, you’ll probably be more familiar with it than your colleagues - even if you’re just the intern. That means if you disagree with them about how something should be designed, you should tell them! Just make sure you clearly write out your reasoning before. You’ll feel like a nerd, but citing sources like blog posts or stackoverflow threads helps prove your point.
Take notes.
You forget a thousand things everyday, make sure this is one of them.
― Michael De Santa, GTA V
I forget a thousand things for sure - be it a company specific acronym, a link to an internal page or what we discussed in yesterday’s meeting. Obsidian and bookmarks help.
