Skip to content

Commit

Permalink
Added mid level dev and senior descriptions
Browse files Browse the repository at this point in the history
  • Loading branch information
elyasha committed Jun 17, 2020
1 parent 0f9d404 commit 7654899
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
16 changes: 16 additions & 0 deletions mid-level-developer.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Mid-level dev mindset (that any (good) mid-level developer needs to follow)

## Mid-level profile
A mid-level dev has more experience with his or her main programming language, normally it is normal to have fluency with different programming languages (more than 1).

They have enough experience to maintain a small project or infrastructure in the production level that is conventional nor critical.

They know to plan ahead and estimate how long they are going to be coding a solution. (with an error margin that is not higher than 20%).

The concept of software quality and quality control is already well understood. They know how to revise other devs programs and check the normal workflow of the company.

Usually, they have 4 to 5 years of experience.

They start to understand that the code is only a small part in the world and are able to better understand clients, end-users and are becoming to improve in their sales skills. Sometimes, they can have a hard time when they need to change some requirements or find alternatives solutions.

They have already understood the notion of scaling systems and are able to analyze their colleagues, not knowing yet to map their complete profile.

At this point, we attend a dev that has at least a B1 (EU) level in any foreign language.


## 1
15 changes: 15 additions & 0 deletions senior-developer.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# Senior dev mindset (that any (good) senior developer needs to follow)

## Senior profile
Senior devs are the devs that are required when the problem is to difficult. They have fluency in many different technologies and can adapt their knowledge to other technologies. In the foreign language domain, they have a C1+ level in at least one foreign language.

They can be project managers and macromanage an entire team. They know difficulties and limitations (technical or not) of the client and they tend to do whatever they can to eliminate these "problems".

They understand the tech skills of the team and are able to delegate work for each person individually. Knowing when to give good feedback or code review.

They know how important is quality control and their work is usually accepted in the first review (a rate that is more than 85%). Always including unit tests in their code base that reduce a lot the quantity of bugs.

In the backend, they have a good infrasctructure fluency. They know and apply the concepts of deployment automatization, capacity planning, security, tuning and perfomance.

They are open to teach other devs and give better ways to implement methods, or other solutions. With customers, they are excellent to find good solutions that have a high cost and benefit ratio.

They are always up to date with the software development world, knowing how to identify good devs or professionals.

They know that scaling is to improve the team productivity.

## 1

0 comments on commit 7654899

Please sign in to comment.