This blog is inspired by a talk I gave at SD Ruby. It was specifically meant for software developers, but I think it applies to any trade. I like to keep things short and sweet, so here we go...
How to Go from Intermediate to Advanced
1. TEACH OTHERS - When you teach others, you cannot BS yourself. You can't teach someone the wrong information, so it makes you accountable for know EXACTLY how something works. Other people will ask you every nitty, gritty question about your topic of expertise. Whether you are teaching online, at work, or at school... teaching will help you grow to the next level much faster.
2. TAKE A JOB THAT MAKES YOU FEEL UNCOMFORTABLE - You can't replicate the experience gained from solving REAL BUSINESS PROBLEMS. Take a role where you are a MAIN PLAYER and are HELD ACCOUNTABLE FOR YOUR WORK. When other people are watching, you can't drop the ball.
3. ATTENTION TO DETAIL - When you're a beginner, small things can slip through the cracks. When you're the expert, attention to detail is really what sets you apart. This varies from industry to industry, but for programmers, you must be maniacal about the little details. (Good commits, secure code, strict validations)
4. GIVE TALKS - Public speaking is not easy and stage fright happens to EVERYONE. Those who give talks overcome this time and time again. It helps you gain confidence and grow an audience behind your product, service, or personal brand. Talks also help you stay on top of current information and make you appear as an industry expert.
5. READ, READ, AND READ SOME MORE - Be a humble learner. There is always something you don't know. There is always a book to read or a video to watch.
DREW HAINES Expert Rails Dev at Hours Logger ;)