Brought to you by

Why we hire any kind of programmer

Posted 7 years ago in Platform by Craig Walker
Posted by Craig Walker

In the most recent blog post on his “CEO Friday” series, the CEO of Expensify wrote a post entitled: “Why we don’t hire .NET programmers”. I’ll let you read it – but with 277 comments (and counting), he’s definitely struck a nerve in an industry still heavily dominated by Microsoft technologies, and in particular, .NET.

While I generally disagree with his assertions, I believe the point he was trying (but struggling) to make is that if you’re a start-up you probably wouldn’t go with .NET, and that developers with experience in .NET are probably not “start-up” material.

It’s quite true that most start-ups in the Web 2.0 (and post Web 2.0) world don’t use Microsoft technologies. The big reason that’s always touted is cost. And while it’s true that commercial software costs money, Microsoft has programs in place specifically targeted at new technology companies (such as the excellent BizSpark program) that helps to reduce this cost significantly. Yes – cost can become a factor as your company scales, however that can be subsumed in your production hosting costs and Microsoft technologies with their enterprise capacity have some serious capabilities to handle scale so those costs can often come much later than they might do with other technologies.

I think cost is only a small part of the reason. The start-up community represents a breed of developer/entrepreneur that often shuns the stifling, corporate world that Microsoft represents – open source languages and frameworks epitomize the freedom and innovation that has inspired them to become start-ups in the first place. This often leads to an assumption that Microsoft developers are only enterprise, services or government workers – 9-5ers who are there to do their job and little else. And while often very talented, they lack the passion to be part of a start-up. This stereotype is often wrong – it’s a generalization that unfairly masks the reality that some of the best people come from these environments.

Now a disclaimer: Xero is a .NET shop. We’re quite proud of our Microsoft roots and have leveraged our experience to get us here. But we’re not religious about it. We use a mixture of commercial and open source tools to get the job done (our entire build and release system is built in Ruby for instance) – we try our best to use the right tools for the job, whatever those tools may be.

We strive to hire great people because people make the business. So we hire .NET developers. And we hire other types of developers. The programming language (.NET is actually a platform, but that’s an aside), is basically irrelevant. We’ve hired some people completely on personality alone – even if some skills were lacking they made up for it with enthusiasm and drive – perfect traits in a start-up developer. Disregarding a candidate based on a particular language is actually pretty stupid. And we will never do it.


Nigel Sampson
March 28, 2011 at 10.12 am

Agree whole heartedly, great to see some NZ .NET companies showing them how it’s done.

Berend de Boer
March 28, 2011 at 10.31 am

How much .NET is there really Craig? The front-end is Sencha, and the back-end, i.e. architecture of the system, is, as you guys describe it, basically a transaction oriented accounting system.

Did the choice of SQL Server influence the .NET decision?

Because I agree that SQL Server is an excellent product, but not sure .NET adds much here.

Ed Buchholz
March 28, 2011 at 11.06 am

We’re a BizSpark member as well and have had a great experience with the program and the MS platform overall. I think the biggest thing to remember when hiring developers is to focus on attitude and mindset over tool preference. Outright blackballing someone because of the brand of tools that they use is just ludicrous.

Craig Walker Xero
March 28, 2011 at 11.07 am

@Berend There is a ton of .NET!! That “transaction oriented accounting system” is actually one the most sophisticated relational accounting engines out there (if I do say so myself ;)) – and it’s completely written in .NET (C# actually – .NET 3.5/4.0 are the targeted runtimes).

So .NET actually adds a lot – in fact it pretty much drives the entire stack. And looking back I would say the choice of .NET actually influenced the SQL Server decision…

March 28, 2011 at 12.10 pm

I would add that a developer who identifies with a single language is probably not going to be a good developer. As you say – the right tool for the job.

Perhaps that is .NET’s problem – it tends to encourage lock-in to the whole technology stack, whereas other types of dev might have a few more tricks up their sleeves.

Dave Lane
March 28, 2011 at 12.26 pm

Nice response, Craig. I totally agree that attitude is key, technology experience is secondary… that said, I do think that there’s a noticeable difference between devs working with MS tools and open source tools in terms of culture and attitude in general.

While I agree with you that there’s a “ton of .Net” out there, I really think that people who judge technology market share based on numbers of jobs listed on recruiter sites and even Seek, is very biased towards corporate and gov’t employers, who are definitely much more likely to adopt .Net. I assert that more (mostly smaller, and startup) companies are using open source stacks for development. I’d guess that the total number of employed developers is biased towards open source, not MS, technologies. Also, there are some very nice solutions for “transaction oriented accounting systems” – I would’ve thought PostgreSQL is quite credible in comparison to MS SQL Server, and at a nicer price point.

Nathan Li
March 28, 2011 at 1.17 pm

I can understand developers being religious about programming language and technology platform in general. But isn’t building a successful startup about execution? Isn’t that about building the right team and get the solution out the door as fast as you can? Technology? Isn’t that just a mean? Isn’t that restricted by the maturity of technology and the availability of programmers that familiar with the technology at the time? Just because Facebook is built on PHP and Twitter is built on Ruby, There won’t be any successful company built on MS stack? I just couldn’t give a damn about whether it’s open source or .NET or any other paid technology? Who ever start making PROFIT is what really matters. I bet Xero will be heaps quicker than both Facebook and Twitter. Now eat that!!!

Berend de Boer
March 28, 2011 at 2.08 pm

Dave, I’m perhaps NZ’s biggest PostgreSQL supporter, but SQL Server is simply far easier to work with. PostgreSQL has an incredible number of bumps in using it, which could have been completely avoided if someone had thought about the poor programmer.

It’s not about power or capability, but ease of use.

Dave Lane
March 28, 2011 at 3.02 pm

Thanks for the follow-up, Berend. I would’ve thought that “ease” (by which you mean graphical interfaces, point and click setup, etc.?) is a high priority for start-ups: they want something that works well, that can do their bidding, and that scales – they can (and must) find an expert to drive it. Often as you know, particularly with regard to software, those two requirements “easy” and “extremely capable” are mutually exclusive.

March 28, 2011 at 5.37 pm

It’s kind of tiresome those articles that clearly just want to drive attention leveraging big companies. I’m a .NET developer for 5 years, started 2 successfull companies, and am a black belt in brazilian jiu-jitsu, I think I can take his developers anytime. 🙂

Berend de Boer
March 28, 2011 at 5.57 pm

No, I simply mean ease of use as a programmer. I don’t care much about the GUIs, but try writing a stored procedure that returns the result of a select statement. There are numerous of such pain points in PostgreSQL.

Adrian Pearson
March 28, 2011 at 8.38 pm

Hi Craig. If Xero was starting up right now, would you be going for Silverlight for your core development?

Craig Walker Xero
March 28, 2011 at 9.13 pm

@Hamish That technology stack is incredibly diverse. But I think you’re right – it’s very difficult nowadays (even in a Microsoft environment) to have such a narrow focus – so that’s definitely something I would want to get into during an interview.

@Dave I don’t think there’s a noticeable difference actually – that’s just fueling the stereotype. Just look at a conference like Webstock ( – most of the attendees come from the services industry or the public sector (i.e., not start-ups) – but the interest and passion is still there. And that “ton of .NET” comment was based on Xero’s codebase, not the current job market 🙂

@Nathan Not sure about that last bit but thanks anyway. And yes – religious arguments about technology are a waste of energy.

@Adrian Absolutely not. I’ve made it clear a few times on the Xero blog that I’m very much an open web guy. While I see the benefit of Silverlight for internal line-of-business applications, I’m very proud of the fact that anyone with a browser can use Xero.

Dave Lane
March 28, 2011 at 9.32 pm

Craig, many thanks for your open web stance – it’s great to see. I think it’d also be great, too, to have support for ODF in Xero as a proper open standard import/export document format (alongside the proprietary MS Office and Google Doc formats) .

Jason M Blumer, CPA
April 1, 2011 at 9.27 am

I don’t know what you are talking about as far as programming languages go, but I was definitely impressed with the underlying accounting engine I saw when I was in NZ. The more I use Xero, the more robust it becomes.

So I trust your abilities to know what language (or platform) to use to make Xero the easiest and best accounting software in the freakin’ world!

Craig Walker Xero
May 25, 2011 at 11.50 am

It definitely isn’t – amazing how many web developers still think JavaScript and DOM manipulation are one in the same – JavaScript may have started life as “DHTML” but it always could be so much more (and is).

Craig Walker Xero
May 25, 2011 at 11.51 am

Oh – and I saw Rebecca Murphey present on the future of JavaScript at JSConf – she was awesome.

May 28, 2016 at 3.23 pm

I’m a passionate software engineer with 10 years experiened in .NET stack. I’m excited that Xero is built on .NET. Any chance that I can join the developmment team? I’m in Vietnam now. Do you have a plan to outsource to Vietnam?

Leave a reply

Your email address will not be published. Required fields are marked *