Medior seniority requires more technical knowledge than junior, so in addition to junior tech skills, medior should have:
- Advanced language features
- Performance evaluation of the code (ie. don’t pull 1 million records from db into memory)
- Conscious usage of programming patterns (ie. “I could use a singleton here instead of normal class”)
- Additional (limited) knowledge about the most used services, like Redis, Elasticsearch, Kafka, or other commonly used 3rd party libraries
- More knowledge about the software ecosystem and general scope
- Errors are not an afterthought anymore
- Errors messages are important information now
Learning capabilities are improved and now acquiring new skills take less time. Soft skills are also further improved from junior level:
- Much better forethought about the possible solutions
- Better at estimating the difficulty of assigned tasks
- Better at predicting the blanks in requirements
- Better balance in asking for help
In short, medior can handle tasks independently, begins to look into other areas of development and thinking about the bigger picture