

Ask HN: C# developer looking to apply for Google - nhfsaco

Excuse the throwaway. My bosses uses HN and he knows my username.<p>I've been a .NET Developer in the UK for a number of years now, with most of those years in an agency setting, working on the websites for numerous large clients. I'd firmly say that I'm a solid mid-to-senior C# developer. In my spare time I also write Python on my Ubuntu box, and I have about 3-4 projects on GitHub using Django. I'm not proficient with Python just yet, but I reckon that I know enough Python and Java to be functional.<p>I'm currently a happy mid-to-senior developer, but like a lot of developers out there, I'd love to work for a large company, and the likes of Google are as large as they get. However, there are a few things holding me back from applying:<p>1. Even though I have a Computer Science degree, my theoretical knowledge is sorely lacking, mainly because my university was mainly a "Java-school". This is something I'm working on and given a few more months I'll probably be up to scratch and able to cram a bit more theoretical CS into my brain.<p>2. If I were to land an interview at Google for a Software Engineering role I'd go in armed mainly with C#. Some say that Google interviewers are fine with C#, but from what I've read there's a good chance of being rejected for being too Windows centric.<p>3. I'm comfortable with Linux and the terminal, but my professional experience outside of deploying the odd PHP and Ruby site is with Windows servers.<p>I've given myself the goal of applying to Google by the summer of 2014, giving me the best part of 18 months to improve my theoretical and programming language to a suitable level for that kind of career jump. However, I'll still be a .NET developer, and I cannot help but feel that going into a Google interview using C# is going to set me back considerably.<p>So, Googlers and .NET developers, do you feel that being a .NET developer is going to hold me back at all? Is it worth waiting and going in with a different language?
======
argonaut
What I have to say is completely unrelated to your qualifications. But...

Are you sure Google is what you want? From what I've heard from people I know
who work or have worked there, Google is quite substantially bureaucratic, and
due to the rigidity of all the standards they have (everything must be built
at scale, many layers of code reviews), it is very hard to get anything done
there nowadays. Have you talked to _several_ current _and_ former Googlers
about what they think about the culture and the pace of learning? I've heard
of instances where a team at Google will built _and entire_ product, and it'll
get completely cancelled even though they built the whole thing already. You'd
never see this happen at a startup.

~~~
nhfsaco
Don't get me wrong. I loved working at my last startup, and luckily things
went really well and the company was acquired by a multi-national firm based
on the strength of one of our websites. I've also worked at unsuccessful
companies and have faced redundancy. However, I'm at a decent, growing company
and am earning good money, and given my experiences with some startups the
work can be exciting, but the hours are long and the money much better than
what you'd find at an agency.

I spoke to some Googlers fairly recently, which prompted me to ask this
question on here. They seemed fairly put off by someone wanting to program
using .NET and acted as if someone who would go into a Google interview armed
with C# would be laughed out.

For all I know, Google might not be a perfect fit for me, but I love the kind
of work that they do, and the idea of working on scalable products definitely
interests me. It's also one of, if not the best place to work in the world,
and they have offices all around the world so I wouldn't be tied to one area
should I decide that I'd like to move to America. There is bureaucracy in most
companies and I bet Google isn't any different, but it's a great environment
and I'd be a lot happier going through code reviews on complex projects with
smart developers than building typical websites and applications.

------
Sindrome
I'd imagine Google cares a lot more about your raw abilities rather then your
proficiency in Python/C++. As long as you can solve comp sci problems in those
languages, then you should be fine.

Demonstrating that you have performed exceptionally during your career means
more to most high end employers than how much of a code library you have
memorized. Most people stand out as exceptional by going to Stanford, doing
well at other large tech companies, contributing to open source, etc. Try to
find ways to make yourself stand out and show that you have made consistent
progress over your career.

Also, why not quit your job to perform a more demanding, stressful, and growth
encouraging job like joining a startup?

~~~
nhfsaco
I've got a few projects behind me, and some impressive clients behind me, so
that part doesn't necessarily worry me. My biggest worry is whether being a
part of the "dark side" of Microsoft will have a negative impact on my
interview.

As for startups, my first company outside of university was a startup. I was
the lead developer for a while and I left the company once they had been
acquired because I felt that I needed to learn from more senior developers. I
still feel that way, which leads me to want to work at a company like Google,
so I can learn from the best.

