| Everybody is junior developer sometimes. Everybody sometimes makes stupid bugs and doesn't see why. Everybody sometimes doesn't know obvious things. Everybody is beginner sometimes. I think that even when senior programmer learns new approach, new project, new language, new paradigm, new tool etc. is as confused as beginner. I think senior/middle/junior are just hierarchy markers to: - define your salary - define your responsibilities in project/company - boost your ego (senior), or keep you to stay humble (junior) "At which point the kinds of mistakes they are making are less trivial and occasionally overlap with problems `senior developer` have." I don't know what you mean. I think every developer in a team is often experiencing similar problems. For example architecture, code quality. You could say that only seniors must be thinking about this. But this is not true, because when there is spaghetti code in project - whole team has this problem. Even junior developer has to deal with spaghetti code (for example), even if he is not experienced enough to write clean code (or even he made this code himself xD). Besides the biggest problems in development are often not technical ones but more people/management related ones. It doesn't really matter if developers are good or bad, if the project or team is poor managed, or if there are some communication issues. |