← Back to Directory

Atlassian interview notes, page 3 of 11

Large Enterprises

Most of these Atlassian write-ups come from Software Engineers (60), then Machine Learning Engineers (28) and Data Scientists (12). The most reported rounds are the technical phone screen (45), the system design round (38), the behavioral / leadership round (10) and the onsite coding round (3).

104 interview notes · updated Aug 2026

Atlassian·Software Engineer·Technical Phone Screen

Apr 2026
Atlassian backend interview, follow-up round after a sequential HTTP fetcher question. They pushed me to parallelize the whole thing and then kept piling on edge cases until I was juggling like four different concerns at once.
  • You've already built a sequential HTTP fetcher. Now rewrite it to send requests in parallel using threads, async/await, or a concurrency pool. It still needs to return the URL, status code, and body for each request.

“The parallelization part wasn't too bad, I went with an async approach and that felt natural.”

View Post

Atlassian·Machine Learning Engineer·Onsite - Behavioral / Leadership

Apr 2026
Behavioral round for an MLE role at Atlassian. One question, pretty open-ended, focused on driving change and showing impact. Not a lot to go on from the session itself.
  • Tell me about a time you drove a meaningful change or improvement at your team or organization. What problem did you identify, how did you build a case and get buy-in, what did you implement, and what was the measurable impact?

“This is a meaty multi-part question and I kind of fumbled the structure.”

View Post

Atlassian·Software Engineer·Technical Phone Screen

May 2026
Atlassian software engineer interview with a coding question that's basically a variant of LeetCode 68. Not the hardest problem in the world but the follow-up tripped me up a bit.
  • Given an array of words and a max line width, format the words into lines by packing as many words as possible per line and separating them with '-' characters. For lines with multiple words, distribute extra '-' evenly to fill the line width (full justification). The last line is left-justified with no extra padding, and a single-word line gets no extra '-'. Follow-up: what if you need to pad extra '-' on a justified line when there are remaining spaces?

“I recognized the LeetCode 68 shape pretty fast, which helped, but swapping spaces for '-' as the separator threw me off more than I expected.”

View Post

Atlassian·Machine Learning Engineer·Technical Phone Screen

May 2026
Atlassian ML engineer round that started from a familiar LeetCode problem and then kept pushing further than I expected. The weighted averaging follow-up was fine, but the space optimization discussion is where things got interesting and a little uncomfortable.
  • Given a stream of integers and a window size, modify the standard moving average so that more recent values are weighted more heavily than older ones. How would you implement a weighted moving average?
  • Can you optimize the weighted moving average to avoid storing the entire window? Walk through a recurrence-based approach like exponential smoothing, and explain the trade-offs compared to exact weighted averaging.

“Started with the straightforward approach, linearly increasing weights assigned by position in the window.”

View Post

Atlassian·Data Scientist·Technical Phone Screen

May 2026
Atlassian Data Scientist interview with a coding question that required both a Python pandas solution and an R equivalent for labeling game outcomes. Pretty technical for a DS role but not unreasonable if you know your vectorized operations.
  • Given a games DataFrame with columns for team IDs and scores, write a function that categorizes each game's score margin into labels like 'Blowout Win', 'Close Win', 'Tie', 'Close Loss', or 'Blowout Loss'. Then apply it to create a new column, and provide both a vectorized pandas solution (no row-level Python loops) and an idiomatic R solution using dplyr or base R.

“The part that tripped me up initially was the 'no per-row Python loop' constraint.”

View Post

Atlassian·Machine Learning Engineer·Technical Phone Screen

May 2026
Atlassian ML Engineer interview with a streaming data problem that felt more like a systems thinking exercise than a pure coding question. The follow-up on weighted averages is where things got interesting.
  • You're given an integer N and an unbounded stream of integers arriving one at a time. After each new integer arrives, output the average of the last N integers. If fewer than N have arrived yet, average over everything seen so far. The solution should handle updates efficiently.
  • How would you redesign the solution if more recent values should carry more weight, for example using exponentially decaying weights or a custom weight vector over the last N elements?

“Circular buffer was the move and I got there eventually, but I spent an embarrassing amount of time second-guessing whether I needed a deque instead.”

View Post

Atlassian·Software Engineer·Technical Phone Screen

May 2026
Atlassian software engineer interview with a meaty trie-based URL router problem. The question had a lot of layers: core data structure, wildcard precedence, concurrency, complexity analysis, and tests all in one go. Felt like a system design and coding question smashed together.
  • Design and implement a URL routing matcher using a trie. It should support adding and removing route patterns at runtime, matching request paths, static segments, and a single-segment wildcard `*` that matches exactly one segment.
  • How do you handle precedence when both a static segment and a wildcard could match the same path at the same position?
  • What are the time and space complexities for insert, remove, and lookup in your trie implementation?
  • How would you make this trie thread-safe when routes can be added or removed concurrently with reads?
  • Write unit tests covering edge cases: root path `/`, leading/trailing slashes, duplicate route registration, and overlapping wildcard patterns.

“The trie structure itself wasn't the hard part.”

View Post

Atlassian·Machine Learning Engineer·Onsite - Behavioral / Leadership

May 2026
Behavioral round for an ML Engineer role at Atlassian. Just the one question but it was meaty enough that I was talking for a while and honestly wasn't sure if my answer landed.
  • Tell me about a time you helped a teammate or peer grow. What gap did you spot, how did you address it, and what changed for them and the team afterward?

“I went with a story about a junior teammate who was struggling to communicate model results to non-technical stakeholders.”

View Post

Atlassian·Product Manager·Recruiter / HR Screen

May 2026
Not much to go on here. The only thing in the content was a vague 'why Atlassian' prompt, no real detail about rounds, outcomes, or how the conversation went.
  • Why do you want to work at Atlassian?

View Post

Atlassian·Software Engineer·Onsite - System Design / Architecture

May 2026
Atlassian system design round focused entirely on a Tag System, and the interviewer was clearly not here for hand-wavy answers. Every design decision got interrogated at the API level, which I was not fully prepared for.
  • Design a Tag System that supports creating tags, associating them with objects, deleting them, and searching by tag.
  • For each API operation in your tag system, what HTTP verb and URL pattern would you use, and how do you handle idempotency and error semantics?
  • How would you implement tag-based search at scale, and what indexing strategy would you use?
  • How would you handle rate limiting and authorization for the tag APIs?

“I started with the data model which felt safe, tag table, join table for tag-to-object associations, nothing crazy.”

View Post