Why is it so much easier for me to read junior programmer's code than senior's?

2 points by progrrrrr ↗ HN
I amd mid programmer, and I noticed that for me it's so much easier to read the code of a junior developer's than senior's. The reason is senior programmer uses so many abstractions over abstractions, dependency injection containers over containers etc. Yes it's easier to write unit tests for it, but it's so difficult to understand anything. Senior programmer is considered to be a very good developer, and he is. But it's just so strange. Maybe I'm just a terrible developer.

4 comments

[ 3.0 ms ] story [ 19.1 ms ] thread
You can be a great developer and still write code that is shitty for others to read.

The best developer I ever worked with, CTO of a startup, had thoroughly-commented code, and usually chose code legibility over code concision.

I think you answered your own question. Of course more abstractions make things harder to read and comprehend. The tradeoff between simplicity and flexibility (and testability) is a design decision that your team has to make. Since this senior dev is a good developer they are probably adding this complexity because they think its necessary for their overall design goals.
You should have a look at a code writte by actual senior programmer, not a wannabe one. Senior people strive for maintainability.