https://amyjandrews.medium.com/7-things-you-need-to-learn-to-become-a-senior-software-engineer-abb5c0a94960