Atlassian Software Engineer Interview: Tackling a Challenging CI/CD Service Design

Atlassian | Software Engineer | Interview Experience

Interview Date: Not specified
Result: Fail
Difficulty: Average

Interview Process

The interview process consisted of two coding rounds. The first round focused on object-oriented design and system design, while the second round included a problem related to scheduling.

Technical Questions

  1. Design a service that performs CICD releases daily (OOD, System Design)

    • The service should notify authors of the release success and deployment version. If a deployment fails, it should roll out to the next deployment version and notify the authors accordingly.
  2. Expanding Tennis Club (Greedy Algorithm, Scheduling)

    • Implement a function that, given a list of tennis court bookings with start and finish times, returns a plan assigning each booking to a specific court, ensuring each court is used by only one booking at a time while minimizing the number of courts used.
    • Considerations:
      a) Each court requires a fixed amount of time, X, for maintenance after each booking before it can be rented again.
      b) Courts only need maintenance after X amount of usage.

Tips & Insights

Maintain good communication with the interviewer during the coding process.