APAC Interviewing, Summer 2024

Apr 10, 2024

In APAC, the summer internship interview season begins for the larger companies (think finance, trading, multinationals) in early Feburary, while for most New Zealand companies it starts in September. All these interviews are for summer 2024 internships, or graduate roles starting in 2025.

In this post, I’m gonna talk about my experiences interviewing for these internships, and what I’ve learned from them, as well as give some feedback for the companies I’ve interviewed with.

Skip to conclusion and tips ->

The state of play, right now

  • In-progress: Atlassian (final, virtual), Jane Street (final, in-person in Hong Kong)
  • First-stage waiting: Google, Microsoft (NZ), Vivcourt
  • Rejected: SIG (final), Optiver (final), IMC (OA)

A little about me and my career

For reference, I am a third-year student in a four-year computer science honours degree. I have ~2 years of commercial software engineering experience in various internships and part-time roles, and a sizeable open-source contribution history.

I don’t come from a prestigious university (at least, by Australian standards), and my previous internships are at small New Zealand companies. My GPA is 7.9 (88.2%, WAM High Distinction).

I would describe my career profile like this:

Strengths

  • Strong experience in software engineering, with wide-ranging high-level knowledge across different programming languages, domains, and paradigms.
  • Strong communication and leadership skills, with commercial management experience. I tend to take a natural leadership role in group activities and generally consider myself strong in sharing and collaborating on ideas.

Weaknesses

  • Deficiencies in data structures and algorithms. I have a good understanding of the basics, but I struggle with more complex problems that involve the internals of certain data structures. My ability to rationalise and analyse algorithm performance is also lacking compared to some university friends.
    • I would derive this from the fact that I am a very hands-on learner. I get dirty in code quickly to understand how things work, rather than reading a textbook or watching a lecture.
  • Competent, but not strong, in coming up with fresh ideas and thinking out-of-the-box more generally. I have strong experience in tried-and-tested methods, so I tend to fall back on traditional approaches that have performed well previously.
  • Notorious yapper, so sometimes I tend to talk myself up too much, namely on my CV and cover letters.
  • I have attention-deficit hyperactivity disorder (ADHD), combined type. This is both a pro and a con, and it’s difficult for me to objectively assess the impact this has on my career prospects, because to me it’s just a part of who I am.

I am a New Zealand citizen (🇳🇿❗️), so I largely apply for Australian jobs (New Zealanders can work without restriction under the Trans-Tasman Travel Arrangement) and occasionally in other countries in Asia-Pacific where the company is willing to sponsor the appropriate visas.

Australia

New Zealand

  • None yet.

Other Asia-Pacific

Atlassian

Role: Software Developer Intern (NZ$95k?, 12 weeks, Sydney-based)
Status: Final-round interview soon
Structure: Online assessment -> 1hr technical -> Final round behavioural, 45 mins

Pros

  • Not much actual interviewing. Only the 1 hour technical and the final round, which is only 45 minutes, and also behavioural. To me, this isn’t enough time to grasp a candidate’s abilities, but it’s good for me because I’m not a fan of long interviews.
  • Atlassian generally seems to be a favourite among Australian computer science student social media. The working culture appears to be quite good. They offer remote positions, albeit at a significant pay cut.
  • The technical interview was about high-level concepts, so you could pick any programming language you wanted. The question was good, acceptably challenging, and relevant to actual work at Atlassian.

Cons

  • Atlassian’s organisation ability is limited. It often took a long time to hear back regarding a specific round, and they sent multiple emails apologising for delays and errors in emails.
    • This might be related to their recent lay-offs which seemed to hit their HR and recruitment teams quite hard, so I don’t blame their staff for this.
  • The technical interview was a bit messy, with the question sent through the Zoom chat and the candidate screen-sharing their code. Other companies typically use Coderpad or HackerRank so both parties can see the code at the same time.

SIG

Role: Software Developer Intern (NZ$140-200k, 12 weeks, paid accom in Sydney) Status: Rejected at final round
Structure: Online assessment -> 1hr behavioural -> 2hr technical -> Final round (in-person, 1 hour technical, 1 hour behavioural/team-fit)

Overall review: 7/10

Pros

  • They flew me to Sydney for the final round! Sydney is a beautiful, diverse city with a lot of nice things to see.
  • The interviewers and staff at the office are very kind.
  • The office is very fancy and is probably one of the nicest in Sydney.
  • They live and breathe poker and table games there, which was a major draw for me (I am an avid poker player)

Cons

  • Feedback was practically non-existent. The rejection email had no feedback at all (short and sweet, I guess) and the interviewers didn’t give me any feedback either. They did ask me for feedback for their interviewers, which I thought was a bit strange, given they didn’t give me any.
  • Rejected literally 24 hours after landing back in Wellington. A bit of a gut-punch there, but we have to go next.

Optiver

Role: Software Developer Intern (NZ$140-200k, 12 weeks, paid accom in Sydney) Status: Rejected at final round
Structure: Online assessment -> 1hr behavioural -> 1hr technical -> Final round (virtual, 1 hour live coding, 1 hour sys design, 1 hour behavioural)

Overall review: 8/10

Pros

  • Feedback from Optiver was very strong. At every stage (excluding the OA), they gave me detailed feedback, informing me of what I did well and what I was weak on. The feedback was genuine and helpful, not just platitudes.
  • The interviewers were very kind and understanding. They were very patient with me and gave me time to think about my answers. Shoutout to Brandon, he’s the goat.
  • Optiver is very well organised. They replied quickly, with a clear process, and always explained what the next stages of the interview process are. They also gave me a clear timeline of when I would hear back from them.

Cons

  • The final round is very long. It was all online and ran from 11:30AM (NZ time) to 5:30pm. This means you have to basically book out your entire day just for an interview, and it also had a lot of rounds.
    • 1 hour behavioural, that mostly repeated stuff from the first behavioural screening
    • 1 hour live-coding, which was a specific trading question that was quite difficult.
    • 1 hour system-design, which was absolutely brutal. It involved multiple components that could fail and designing a well-distributed system that could handle a lot of possible events. They were also very clear about the fact that Optiver doesn’t do any concurrency-style programming, which unfortunately eliminated a lot of my experience.
    • Meet and greet with a graduate, and some introductions to Optiver’s business, etc.
  • Final round being virtual. Obviously it’s pretty insane to fly a candidate to Sydney (like SIG did), but that would’ve been nice, haha.

IMC

Role: Software Developer Intern (probably similar to SIG/Optiver)
Status: Rejected at online assessment (first round)
Structure: ?

Not much to say here, I dropped the ball on the online assessment. You win some, you lose some, lol.

Jane Street

Role: Software Developer Intern (~NZ$410k, 12 weeks, paid accom in Hong Kong)
Status: Final round soon in Hong Kong
Structure: (No OA, just CV review) -> 1 hour technical -> Final round in Hong Kong (3 technicals)
Note that the structure is very flexible and depends on candidate performance.

Pros

  • They’re flying me to Hong Kong! I’ve never been there before, so I’m excited to see what it’s like.
    • They paid for Premium Economy tickets from Wellington (about ~NZ$5k return) and put me in a 5-star hotel in the central business district. Very cool!
    • The trip is four days (compared to just 1 day for SIG), which should give me some time to explore Hong Kong and probably eat some great food.
  • Jane Street is very well organised. They replied quickly, with a clear process, and always explained what the next stages of the interview process are. They also gave me a clear timeline of when I would hear back from them.
    • They cut straight to the business in the emails, no fluff. It’s clear they want the best and are willing to do whatever to get that.
  • Getting to the final stage was very quick. After the 1 hour technical, about a week later they emailed saying they want to take me to Hong Kong for the final interview. This, again, could be a pro, or a con.
  • The first technical interview didn’t really rely on an in-depth knowledge of data structures & algorithms. This is one of my weak points, so I was happy about this. Instead, they seemed to be looking at your ability to work co-operatively and think through problems.

Cons

  • No behavioural interviews. This could be a pro or a con, depending on your perspective. For me, I think this is a con, because normally I perform better in behaviourals compared to pure technicals (I am highly competent, but I need to work harder)
  • The stakes here are very high, and the pressure is up to the max. Jane Street is known for being one of the most difficult companies to interview for, and they pay their interns a lot of money. Pressure turns coal into diamonds, but it also turns coal into dust.
  • No feedback was provided after the first technical.
  • The first technical was extremely difficult. I can’t share the details, but it is generally split into three stages, with the third stage being very difficult, involving some very complex thinking and a lot of pressure.
    • I honestly think I bullshitted my way through this one with some impressive confidence tricks. It seems it worked, but I’m not sure if it will work in the final round.

Conclusion, and my tips

Interviewing is absolutely brutal and pushes your emotions to the peak and then straight back down to the trough. It takes away valuable time from your social life, both for the interviews themselves, and any practice you might do.

I was interviewing during a fairly stressful time in my life mental-health wise and I hit some pretty interesting lows. Getting that phone call from an unidentified Australian number (always, seemingly, at the worst time) is always a rollercoaster of emotions. But, it’s a necessary evil, and it’s a great way to learn about yourself, and how you regulate your emotions.

Remember that the road runs high and low for a reason. When one door closes, another opens. As with many walks of life, you are your own worst enemy. These generic platitudes don’t feel true when you need them the most, so it’s important to remember that it is okay, and normal, to feel down, even if you feel like your emotions are unjustified. Emotions are irrational, and that’s okay.

Lastly, remember not to tie your self-worth to your job (or lack of one), or your paycheck. You are worth more than just who you work for, and you are worth more than the money you make. You are a human being, and you are loved.

Very generalised tips:

  • Don’t fret the minor technical details. Brush up on data structures and algorithms, and make sure you can speak confidently to the performance of lists, arrays, and all that, but don’t spend all your time on optimising aggregate red-black trees or whatever. It’s not worth it.
  • Speak with confidence. Confidence is a difficult skill for a lot of computer scientists (unless you’re driven purely by ego, like me), but confidence is incredibly attractive in the eyes of interviewers. If you’re confident in your abilities, the interviewer will be too. As they say, talk up on it!
  • In live-coding interviews, yap, and keep yapping. The interviews want to see you spitballing ideas and thinking through them. Criticise your own ideas to show that you can think critically about your own work.
    • “We could do this approach, but that would introduce problem X. We can negate that by doing Y, but that would introduce problem Z.”
    • Engineering, especially in software, is all about trade-offs. Thinking about trade-offs, and weighing them against each other, is a very important skill.

I wish you the best of luck for any interviews you might have coming up. If you have any questions, feel free to ask me on Discord (@jackson.nz). I’m always willing to help a fellow student.

Thank you for reading! 🍀