Internships
Register
Copyright © 2000—2025 JetBrains s.r.o.

Building a Sync Engine for YouTrack

Description

Problem description

In YouTrack, certain race conditions occur when users update multiple fields regarding an issue with slow or unstable network connections. Other users or Workflows run on the backend could also make modifications. These issues lead to inconsistent UI states and potential data loss.

This internship project focuses on designing and implementing a sync engine that ensures reliable and predictable updates between the client and server, even under adverse network conditions and simultaneous editing.

Project goals

  • Investigate and document current behaviors in YouTrack’s entity update flow.

  • Design a generic sync engine that:

    • Applies changes optimistically to the local state

    • Performs merges between the server and local state

    • Detects and resolves conflicts (automatically where possible)

    • Optionally allows user intervention in case of non-resolvable conflicts (e.g., concurrent description edits)

  • Implement a prototype that integrates with YouTrack’s issue update flow.

  • Propose UI/UX solutions for handling conflicts when needed

Outcome:
A working prototype of a sync engine that improves the reliability of field updates in YouTrack, plus a documented architecture proposal that could be extended to other parts of YouTrack and beyond.

Requirements

🛠️ Technologies & Skills Involved:

  • TypeScript + React + MobX (YouTrack frontend)

  • Real-time collaboration principles

  • Conflict resolution algorithms (e.g., CRDTs, Operational Transform, or simplified 3-way merge) would be a plus

  • Kotlin (YouTrack backend) (Not required, but a plus)

  • RESTful APIs and asynchronous request handling

🙋 Ideal Candidate:

  • Understanding of concurrency, sync models, or distributed systems

  • Experience with frontend frameworks (especially React) and state management

  • Willingness to dive deep into complex edge cases and propose robust solutions

Admission

Internship projects 2025-2026

Contact details

internship@jetbrains.com

Preferred internship location

Armenia
Cyprus
Germany
Netherlands

Technologies

Git
JavaScript
Kotlin

Area

Development
Frontend
Research

Internship timing preferences

Full-time preferable

Candidate graduation status

Final-year students preferred