4 ms·
From my perspective, I'd try walking before you run. You need to get the interview first. Although you hear of Google hiring thousands of developers a year, an
by EnderMB 9y ago
From my perspective, I'd try walking before you run. You need to get the interview first.
Although you hear of Google hiring thousands of developers a year, and those that do get hired having a 5% chance of success or whatever, that doesn't mean that Google are guaranteed to offer you an interview. I've applied a handful of times, and despite having a Computer Science degree, startup, and small/large agency experience I've never managed to get past the application stage at Google or Microsoft. Microsoft and Amazon contacted me in the past, but neither actually resulted in an interview. Google rejected me within days of applying on both occasions I applied.
With that in mind I would recommend that you follow a loose curriculum, and just focus on becoming the best developer you can be. I'm currently working through John Washam's repo on getting a job at one of the big four, and it was good enough to get him through the door at Amazon.
https://github.com/jwasham/coding-interview-university https://github.com/jwasham/coding-interview-university
In general I think it's a good idea to rethink what your aims as a developer are every now and then, regardless of what company you want to work for. Recently, I was a senior .NET developer at a large agency working for big-name clients, but I often felt like I wasn't a "proper developer" because I worked on the .NET stack, and because for the past few years I've felt complacent in a senior-level role. To combat this, I started learning some new languages on the side, and eventually moved to a new job where I've switched from being the go-to guy for .NET to the goes-to guy for working on a Linux stack, and I hope that over the next few years I'll pick up enough knowledge that I can throw an application in again and not get immediately rejected.
- kzisme 9y agoWhat sort of languages/stuff did you work out to move out of feeling that way with .NET? I've been working with .NET for 2ish years and have been feeling the same.
- EnderMB 9y agoI've been lucky enough to join a company that is largely agnostic. The devs here seem to be mostly Ruby and JavaScript, but a bit of Python too. I've not done much dev yet outside of a few bug fixes, but simply being out of my element has helped considerably. My only gripe with C# and .NET is that it's tied to Windows, a fact that immediately locks you down to a single tech stack. Sure, you could write any mainstream language on Windows, but no one does because the language and frameworks aren't optimised for Windows. You're writing code as good as what's written by others on the Linux stack, and your development environment is largely as good as what everyone else is using, but you feel isolated. For me, it's this perception that leads people to think less of .NET at a platform. You're the guy that drove a Ford to a Volkswagen convention, and even though your car is as good (and in some ways better) than what everyone else has, you'll still feel like an imposter. In terms of getting over that feeling, I don't think any particular language will help you get over it. My knowledge of JavaScript is alright, so I'm picking up Node/Express at the moment. For the past few months I've been working through Django too, so my ultimate aim is to be in a position where I no longer feel limited by a different language or platform.
- kzisme 9y agoThanks so much for the reply! I guess my other question would be how did you end up at your latest job? I always find that - for non .NET jobs they are mostly looking for Sr. level folks for jobs. Any advice on transitioning?
- EnderMB 9y agoI think it was mainly luck, because I've noticed this on both sides. Senior roles are extremely hard to fill because there aren't enough experienced developers looking for full-time roles. In the UK you often reach a certain earning threshold and your options are: 1. Push the salary limits where you can, but accept a full-time role with limited progression, limited pay, but less stress. 2. Be a lead developer, and ultimately move away from code and into management. 3. Go contracting, because you'll earn 2x what you earn as a salaried employee. Having been on the other side and having to look for a senior-level candidate to join a team, I'd say that you could probably still send a speculative application, and essentially explain that while you're not the finished article they're looking for, you're interested in the company and you're actively looking to learn. For my interviews, I essentially went in with full honesty. I said that my main experience is C#, but that I'm looking to move away from web development on the Windows stack and am looking to give something new a try to build my skills as a developer. Some companies will appreciate your honesty, and some won't, but I'd argue that the companies that are merely looking to fill a defined role won't offer you the progression you're after anyway. It's still early days where I am at the moment, and there's every chance that things might not work out, but so far I've been enjoying being the newbie again. For me, it's been less about moving to a new stack, and more about getting over that imposter syndrome of being a one-stack man. If it all goes to shit, and I get made redundant/sacked, at the very least I can go back to my old stack, and that alone takes a good bit of stress off of me.