Roles · Desktop Developer (Qt/C++) · Junior

What a Junior } should know

8 core skills, 53 in total. Expectations per skill, and what changes at the next level.

This page lists what a Junior } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Testing & QA, Version Control & Collaboration.

8core skills
45additional skills
4skill areas
0%at Advanced or Expert
Assess myself as Junior Full role matrix

Core skills for a Junior

Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.

Programming Fundamentals · 3

Follows team coding standards for C++/Qt. Uses clang-format and Qt Creator code style. Writes readable code with clear names. Passes code review without critical remarks.

Memory Management Awareness

Understands Qt ownership model: parent-child for QObject. Uses QScopedPointer and std::unique_ptr. Knows deletion rules for QObject without parent. Avoids dangling pointers through QPointer.

Multithreading Awareness

Understands basic multithreading in Qt: QThread usage for background tasks, signal-slot connections across threads, basic understanding of thread affinity in Qt event system. Follows team conventions for keeping UI responsive with worker threads.

Testing & QA · 1

Unit Testing Awareness

Writes unit tests through Qt Test (QTest) with QCOMPARE and QVERIFY. Tests signals/slots through QSignalSpy. Understands test fixtures and data-driven tests in Qt Test.

Version Control & Collaboration · 2

Code Review Awareness

Participates in code review as a reviewee for Qt/C++ code. Applies reviewer comments, understands coding standards. Leaves simple readability comments.

Git Advanced Awareness

Uses Git for daily work: commit, push, pull, branch. Understands gitflow for Qt projects. Works with .gitignore to exclude Qt build artifacts.

Desktop Development · 2

MVVM Pattern Awareness

Understands the fundamentals of MVVM Pattern. Applies basic practices in daily work. Follows recommendations from the team and documentation.

Qt / C++ Desktop Awareness

Knows Qt 6 and C++17 basics. Creates simple widgets through Qt Designer, uses signals/slots for connecting logic. Works in Qt Creator, builds projects through qmake/CMake.

Additional skills

Not assessed by the team, but part of the self-assessment and the development plan.

Algorithms & ComplexityAPI DocumentationAsync ProgrammingAuto-Update MechanismsAWSBenchmarking Tools & MethodologyChatGPT / ClaudeCPU ProfilingCursor IDEData StructuresDatabase IndexingDesign PatternsDesktop App Packaging: MSI, DMG, AppImageDockerE2E TestingGenerics & Parametric PolymorphismGitHub Actions / GitLab CIGitHub CopilotGraphQL DesignGTK / Linux DesktopI/O & Disk ProfilingIntegration TestingIPC: Inter-Process CommunicationKubernetes CoreLatency OptimizationMemory ProfilingMemory ProfilingNetwork FundamentalsOffline-First & Local StorageOOP & SOLID PrinciplesOpenTelemetryOWASP & Application SecurityPlugin ArchitecturePostgreSQLPrometheus & GrafanaPrompt Engineering for CodeRedisResource Optimization FinOpsREST API DesignSecure Coding PracticesSLI / SLO / SLAStructured LoggingSystem Design FundamentalsTerraformType Safety & Type Systems

What changes at Mid-level

53 skills get a higher expectation or become core when moving from Junior to Mid-level. The biggest jumps first.

See the Mid-level page →
Run this with your whole team
Self-assessment plus manager and peer reviews against the same matrix, gap analysis and next-level readiness for every engineer. Team Pro is free for 14 days; individual tools stay free forever.
Start a team trial (14 days free) Send to my manager

} in the open competency matrix: 53 skills across 5 levels. The matrix is free for individuals and stays free.