4 ms·
Something I feel that has somehow not yet been addressed by this thread is surroundings. I initially came to CS with an undergraduate degree in a humanity, thi
by batoure 13y ago
Something I feel that has somehow not yet been addressed by this thread is surroundings.
I initially came to CS with an undergraduate degree in a humanity, this has (despite some years of good achievement) left me with with a constant fear of being left behind in irrelevancy. This has made me always look at my current employment as wondering if it furthers my CS narrative.
Thankfully for the time being unemployment in CS is pretty low. Treat your new job as a chance to harden some of the skills you have been learning. But the most important thing you can do is find the next RIGHT job, I have found that the most consistent way to improve your skill set is to work places where you feel like you are the dumbest person in the room and wonder why they gave you a chance. When you don't feel that way any more, it may be time to leave (assuming learning and growth is your number one priority).
Ultimately what that rambling paragraph gets at is... if you aren't learning from your job then you are losing out and you should leave.
Think about working actors in Hollywood these are the actors you recognize in almost every movie that are constantly recast to play basically the same character in a story. At some point in their careers they got type cast and the only way that they can continue to make money is to work as much as possible. If your goal is to continually grow as a programmer you have to figure out how to be the A list actor who is always surprising people. Developing a narrative that showcases your intelligence and adaptability is the most important thing you can do right now.
- JackMorgan 13y agoThis is really good advice! For my first three jobs, I ended up leaving just as I started to feel a deep mastery, roughly two years in. All were really different and I felt like I had to scramble just to not get "caught" in how unprepared I was. Every one of my jobs since has been like that, each one a big move up in complexity, pay, and skill of my teammates. As soon as you are the best developer on your team, chances are you'll get comfortable and stop growing. I think the most important skill I have right now is a powerful flexibility that comes from a broad set of experiences working in a variety of languages, frameworks, and domains. In six years I've written and maintained code professionally in: Perl, Java, PHP, Python, Ruby, VB6, VB.NET, C#, and F#. And I've worked in banking, educational kids games, magazine printing and sales, event tracking, and school financial aid. It's easy to think you're flexible and adaptable if you've only ever learned one language and you are comfortable where you are. I've known and hired developers who were supremely confident in their adaptability (but only had a lot of experience in one place) who, upon moving from a "level 1" job in x language to a "level 2" job in y were broadsided with things as simple as syntax, in some cases quitting to go somewhere else to make less! Or like one guy I worked with, he loved Python and would constantly talk up how great it was and better than .NET. I finally said, "great, I love Python, let's do something in it!" We got about twenty minutes in when he realized Python is duck typed and decided Python sucked. The problem with both of them is they'd really only ever worked in one language doing things one way for the same amount of time I'd worked three different jobs, and they didn't know how to adapt and be uncomfortable.
- izolate 13y ago> I have found that the most consistent way to improve your skill set is to work places where you feel like you are the dumbest person in the room and wonder why they gave you a chance. When you don't feel that way any more, it may be time to leave I follow this to the letter like a credo. One of the worst feeling is watching everybody better than you leave the company, leaving you the most capable developer. It's unnerving, and only a fool would stay in that position.