views:

221

answers:

9

A lot of us developers who are passionate about technologies do this.

  1. Read technology experts' and fellow developers' blogs
  2. Follow technology news
  3. Listen to tech podcasts, watch screencasts etc
  4. Do part time pet projects to assimilate know-how
  5. Take proactive steps at work to produce more valuable software

Fine but all these activities will make you better at what you do, but are more of individualistic and do not really take you to the next level. So what is a 'next level' to a developer who is technology focused; who doesn't want to become another project manager. Being architect from developer may be one. But not for all.

Also I am not looking to discuss "How to become a better programmer"

So What should be the ideal 'next level'? and what could one do to reach the next level?

+2  A: 

Perhaps inventing / building original things? This is high risk and will probably result in failure the first few times around... but if one does this over and over, learning each time from past failures I think in a few years you could find yourself at the "next level". If for no other reason than most people don't have the guts, determination, etc to make products from ideas (especially when trying novel, original ideas).

Edit: my definition of "next level" is creating original things/products/etc that have a large positive impact on the technology community and society as a whole.

MrDatabase
+1  A: 

Build something in your free time. It doesn't have to be open-source, but making it public will help you learn the more complete process. Find something that you're interested in and just go for it. This could even take the form of starting your own company.

Sometimes we get stuck in this rut where the codebase at our jobs is so established, and there's so many more experienced architects that we don't get the chance to try this stuff ourselves. The only way to overcome this is to go it alone.

bmdhacks
+2  A: 

One option could be to start a technical blog or an open source project..basically, showing leadership in areas you are more comfortable with.

Gulzar
+7  A: 

Take on a technology or project and take a little extra time out of your "improvement" time bucket and allocate it to becoming an expert at that technology and project.

As you get more acquainted with that technology/project and start owning it more and adding to it or contributing to its community, you will begin to posses a unique combination of skills and knowledge that will be invaluable to other members of that community or users of that project.

At this point, you should start blogging about your experience and knowledge and try to give talks at user groups, conferences, and other venues.

When you start putting your ideas out for public criticism, you will rapidly start accelerating your knowledge and awareness of how this technology or project should be used and how people are trying to use it and where they are right and where they are wrong and where they need the most help.

Keep putting yourself out there and ingesting the critical feedback, comments, criticisms, kudos, etc and keep advancing your knowledge.

Some good examples might be:

  • Become an expert at NHibernate. More and more people are using this tool and are confused and having difficulties with it. It's complicated enough to be interesting, yet straightforward enough that you will likely be successful in your advancement.

  • Become an expert at some other OSS project

  • Contribute to an OSS project and its community wiki/forums.

chadmyers
I agree. Simply "keeping abreast" of technologies is important, but isn't really going to get you anywhere. You need expertise. You need to know the ins and outs of something down to the deepest level in detail.
Kristopher Johnson
+3  A: 

I guess it all sorta depends on your perspective. If "next level" isn't simply to become a better programmer, maybe "next level" would be one or all of these:

  • Getting more money
  • Getting more respect
  • Getting more attention

If these are your goals, then maybe you could:

  • Write original and useful applications
  • Earn more degrees or certifications
  • Make a substantial contribution to an established project

In the end, getting to the "next level" is probably going to be hard work.

Joe Lencioni
+4  A: 

Get out of your comfort zone!

  • Get a new job
  • Get a new position at your current job
  • Get a new customer (if you are a consultant)
  • Work with a new language/technology

These things will lead to increased experience and confidence!

sepang
+1  A: 

I have to agree with earlier posts. Writing about technology or creating something new either with a new technology or creating a new technology itself. Become a teacher/guru or become a wizard.

A: 

Teach others.

This will highlight gaps in your knowledge and the inevitable questions will force you to understand the concepts properly. E.g. do you really understand how x works...

alexmac
+2  A: 

So much of what we do is how we apply our previous experience to new things. I personally think that to take things to the next level you have to change the way that you think. Depending on the level that you are at and what you want to do I think there are different things that you can take up. We tend to focus on new technologies, but I believe that there are very few progaming languages that will produce a truly mind altering, life changing experience.

I believe that for something truly different you need to look away from programing technologies.

  • Teach a class at a community college
  • Coach a little league team
  • Work at a homeless shelter
  • Remodel your house
  • Restore a car
  • Build some furniture
  • Study quantum mechanics or chaos theory

To become a good programmer you need to study different languages, read blogs, work on different projects and work with different technologies. To become a great programmer I think you need to collaborate with different people, teach coworkers and communicate with others in a manner people with less experience can relate too (blogs, training sessions, etc), but I think to become something truly different we need to do things outside of the way we have been trained to think.

bill_the_loser