There are activities — other than programming on client work — that are key parts of working in the software industry.
If you work for a software company and you want to do, e.g. Ember.js work, you should be:
- Going to local Javascript meetups (networking, public speaking)
- Reading and writing JS blogs (professional development, technical writing)
- Experimenting with open source libraries (professional development, technical development)
- Fiddling with personal projects that use Ember.js (professional development, project management)
- Giving lunch-and-learn presentations at the office (public speaking, professional development)
These things will generate leads for future Javascript work, demonstrates your ability to build Ember apps, and expands knowledge of the framework throughout your company.
Isn’t all that stuff for marketing and biz dev to handle? I just write code…
Producing artifacts (blogs, screencasts, comments/discussion posts, open source, talks, etc) is a form of marketing and business development that requires development chops. The folks in The Marketing Department can’t do this.
Think about who you would seek out if your business needed help with Javascript. Chances are it will be the local company that sponsors the JS meetup, the independent contractor that gave a conference talk, or companies with a well-known community presence.
Networking is not just for LinkedIn bozos at business mixers.
Networking is more of a mindset and most developers aren’t that far off from doing it already, whether you know it or not. Having a discussion on Twitter about a blog post is networking. Going to local meetups is networking. Playing table tennis with other developers is networking.
Building these kind of connections aids in recruiting (“hmm, that company has a lot of people I like interacting with, maybe I’ll apply”), business development (“We don’t have capacity to do this work, let’s steer this qualified lead over to them”), and marketing (“Oh, FooBarCo? Yeah, I know a couple people there that are really sharp”).
But what do I get out of it? I might have to do some of that stuff “on my own time”…
Participating in these activities allows you to gain more influence and control in your professional life. If you just sit back and wait to be “placed” on a project, what you work on is largely the luck of the draw. If you want to work with some particular technology, doing business development and marketing improves the odds that your company can win those kind of projects — and that you will be staffed to them.
Sometimes it is hard to see time that we aren’t spending typing code into our editor as beneficial since, at the end of the day, developers will be evaluated mostly on their code. But by being deliberate about doing these kinds of networking activities you gain control.
Control of what projects you might work on, control of what technologies you get to use, and control about the kinds of people you work with.