Thanks for sharing these thoughts! As someone who has working as a Software Developer for some years after originally coming from a different background, I'm now finding myself in the point in which improving becomes more challenging. Besides the perhaps more obvious points of covering the gaps in the Computer Science curriculum I may have, I really liked how you pointed out that excelling at your project's domain can make a difference. Now that I'm working in a project whose domain is very different from anything I've worked on before, I see how I could benefit from being more knowledgable in the subject.