# :chart_with_upwards_trend: Developers grading

> Grading is an approach to classify developers based on their skills and experience. Through grading, it is possible to understand how to differentiate the difficulty of tasks and the expected set of skills required to handle them.

Nowadays, you can encounter the following common grading approach. The following levels can be marked:
- Junior;
- Middle;
- Senior.

Each company has its own vision of developer grading and a set of skills and responsibilities declared for different levels. It's common to encounter the following situation: you may be promoted to a senior role in one company, but in another company you might be assessed as a mid-level developer. Despite this, it's possible to introduce common expectations for each level. We will use the simplified approach described previously to describe each grade.

**Example:** You can check this website to get knowledge about leveling systems in different companies: [levels.fyi](https://www.levels.fyi/)
![](https://github.com/Salmer/CppDeveloperRoadmap/blob/main/Russian/Grades/Source/GradeTable.PNG?raw=true "GradeTable")


## Level Descriptions

You can read these articles to gain understanding about each level and its common expectations:
- :alien: [Pre-Junior C++](PreJunior.md)
- :yum: [Junior C++](Junior.md)
- :sunglasses: [Middle C++](Middle.md)
- :smiling_imp: [Senior C++](Senior.md)

---

[**To main page**](../../README.md)