YC startups that are hiring
triplebyte.com
triplebyte.com
https://math.stackexchange.com/questions/76491/multiple-choi...
They might all be crowded into a small room, but if the founder says "we believe in collaboration and will never put developers in silos" instead of "we'll be getting individual offices ASAP, but you can work from home if you need to" then you have some visibility into the companies chances.
I think it's one of those things where if it's important to you, it's really important to you, but it's not important to all that many people. Which would make it a good sorting filter for a job-matching website. I don't think it'd really send much of a signal to companies regarding the relative merits of each, but it sends a very strong signal to employees who care regarding which companies might be a good fit for them.
It's very hard to find hardware engineering startup jobs, and this is a space where your site could really stand out.
(Didn't see them listed.)
We know it's still not perfect though and our goal is to keep experimenting to find what works best and be open about the results. As we mentioned in our last blog post, we're planning to offer take home tests as an option for our next experiment.
Perhaps as well as take home tests you could consider a longer form one which builds a feature using several methods, offering help if required so most people don't get stuck. Say parsing a set of data files, something like that.
When hiring I've found walking through something like real work with candidates most useful, and also crucially using the same challenge for all for comparison.
If this data is present (data showing that present hiring methodologies don't predict successful business outcomes), do you have data showing that hiring people who need jobs is any better? We /are/ different from each other -- as an example so obvious it borders on the ridiculous, people who have been programming for ten years will be much faster at it than people who haven't. At what point do you draw the line to state that people stop being different? If so, what data did you use to draw that line?
[1] http://blog.alinelerner.com/resumes-suck-heres-the-data/
Now I'm using it again, for the same reasons. I already know it, I'm pretty quick with it, it's predictable, and it works. I'm also old school and will probably deploy physical servers when the time comes. Look at StackOverflow - their whole site runs on a handful of properly configured servers running properly written code.
That said, .NET is not sexy. The tooling is expensive (Pro, Ultimate) or crippled (Express). It runs on Windows, which has fallen out of favor[2].
Even though I like .NET, I'd advise anyone new to learn JavaScript first. In my opinion, Node.js is my nightmare realized, but it works, and it's now possible to make things work in the browser and on the server with knowledge of only one language. More bang for your buck.
For startups technology choices are incidental when they're not the core of the business. If you're making a database, your tech choices matter. A consumer app? You're more likely to die of a bad product or team drama[3] than fallout from rendering HTML with bash scripts via CGI.
So anyway, you don't see more .NET because it's expensive, it's not the best beginner language, and it doesn't run on OS X. Also, the alternatives are much improved - It's hard to argue for .NET over something else because even where it's better, it's not that much better. And most of the time it doesn't matter.
[1] Grew up with access to an MSDN subscription. I knew of and played with Linux, but in the pre-virtualization days, I had to reboot to use it. Understandably, I preferred tools I could use on Windows, my primary OS. Also, while it's no longer the case, the MSDN documentation used to be fantastic. I basically taught myself how to program by reading the MSDN docs and tearing apart the sample code and programs.
[2] For the same reasons I developed on Windows as a kid, younger developers will want something they can run on OS X directly, or for free in a VM.
[3] Like this: https://news.ycombinator.com/item?id=9840419 The number of startups that die due to founder drama is astonishing.
Visual Studio Community 2013 (and 2015) are completely free and nearly fully featured. Gone are the days of Express being a super lightweight VS IDE. I used to buy Pro for side work but now I can get by with Community.
But have licensing terms which limit the contexts in which they can (legally) be used.
> Gone are the days of Express being a super lightweight VS IDE.
Express is still a super lightweight VS IDE. Community may eliminate most of the use cases for Express, since most of the cases where it makes sense to use Express may be places where Community is an available, per the licensing restrictions, and better choice.
And you also get credits from Bizspak, that could be used to apply to offset AWS licensing.
Too much drama. Here's pricing for m3.large:
Red Hat: $0.193
Windows: $0.259
Win + SqlWeb: $0.367
Besides, you get several(?) free SQL licenses with BizSpark, if you're so inclined.The cost is worth it if it saves you multiple employees worth of development work or administration overhead, and in my experience it does. The pricing is also (surprise!) negotiable. At Loopt, our annual software licensing cost was well under the cost of one developer, and this was before BizSpark.
But you can see why people get some sticker shock: $14,256 on their website for SQL Server 2014 enterprise (per core!) http://www.microsoft.com/en-us/server-cloud/products/sql-ser...
However as you say, you could easily get a 50% discount on that without having a big SQL Server farm.
No bizspark required.
Re the expense of doing it the MS way, Microsoft will gladly throw free/cheap software and services at you: https://www.microsoft.com/bizspark/
Just thought I'd qualify that before someone else mentions it.
But seriously if you want something quicker than c# for prototyping just switch to F#. Ruby has only downsides.
Probably a major driver is the various virtualization and cloud-driven technologies not fitting real well with Microsoft's server environment. Startups want scalable architectures that allow them to easily adjust to changing demands and Microsoft doesn't really offer that right now -- or, at least, they don't offer that as cost effectively as Linode, Digital Ocean, AWS, RackSpace, and so on.
If Microsoft did offer something in that arena, I'd expect the licensing costs to be obnoxious. As a recent example, we've migrated two mid-sized office networks recently to Windows domain environments, and that cost the customers extra money just for CALs -- one CAL per domain-connected device (or user account, depending). That sort of licensing scheme is a rounding error cost of operations for the enterprise, but for startups it's a major nuisance.
And then there are databases: should Microsoft-stacked startups go with MS-SQL, which is slow and cumbersome and requires maintenance schedules to be developed for it, or should they go with the other default enterprise choice, Oracle, which is stupidly expensive, or should they try integrating MySQL with Windows and hope nothing breaks in the future?
They're also not getting to take advantage of the latest and greatest technologies with the Microsoft stack. NoSQL? nginx? The fastest-iterating web technologies right now aren't happening under Microsoft's roof. I don't mean that Microsoft doesn't offer a lot of advanced technology, I mean that the open source world is able to push an update to GitHub one day and everyone can be running the latest and greatest version a few minutes later, and then it can happen again a few days later. Microsoft isn't doing that, so they're lagging behind some bleeding edge developments.
And Microsoft has its own history to overcome. They have burned people a lot over the years. Younger people working in technology are largely ignorant of it, so for them, Microsoft has a pretty OK reputation. But us grey beards remember the Microsoft of the 90s and would sooner exit the industry altogether than be stuck with being responsible for a Microsoft stack for the next 10 years. Just do a search for "Microsoft discontinued technology" or similar, and you get a handful of recent results -- since Google has the long-term memory of a goldfish -- but you can start to get the idea: if you build something with the Microsoft stack today, Microsoft might discontinue support or development for some part of it next year and you might be stuck. With open source technology, you can either choose to continue support or development for it yourself, or continue running it unsupported for as long as you'd like. There are options. Vendor lock-in is harmful in the long term and startups have no leverage for dealing with it and I think many of them are at least subconsciously aware of that.
Microsoft has its place. If you want stability -- in a slower rate of change sense -- Microsoft is what you want. If you wan to be able to hire people based on their certifications, Microsoft is what you want. If you have a massive IT budget, Microsoft is a choice you can afford.
They just aren't the right fit for most tech startups.
Nope. First, both AWS and Azure offer Windows hosting. Second, licensing costs on AWS are around 30% markup on top of same Linux hardware. Hardly "obnoxious".
I've seen the shops that have C# or Java as their backend and they move too slow to be a competitive threat. If their frontend is written in Ruby/Rails or Python/Django then maybe they have a chance against the competition but usually they'll be held back by the slow progress made on the backend.
For some reason the big slow enterprise mindset gets transmitted through the choice of language. Companies that use Scala or some other JVM-based language are less likely to be enterprisey for example.
Licensing fees and management are a big deal for Microsoft.
It all relates to the enterprise vs hacker mentality.
Choice of language only affects your culture if you believe choice of language affects your culture and let it happen.
I would disagree with that. I just came from a startup on .NET. The develop/build/test/deploy cycles were really slow (mostly due to tooling/infra, not the language), which meant devs didn't ship frequently and didn't test their code much. That affected the culture quite a bit: no rapid experimentation means no hacker mentality.
It may be that you can develop rapidly with C# or Java (I just wouldn't know, I haven't ever used either in a highly-productive environment) but if they hold you back from shipping quickly, they hold you back from the hacker/startup mentality.
This is complete nonsense. It is popular nonsense, but nonsense nonetheless. .NET is a perfectly reasonable tech stack for certain kinds of problems -- for example if your application has to interact regularly with MSFT core APIs, you'd have to have a pretty compelling reason NOT to use the MSFT-native stack.
> It all relates to the enterprise vs hacker mentality
This too is a story that HN likes to tell itself to justify its preference for this week's hot new javascript framework (or whatever).
At the end of the day, different tools are good for different use cases -- and while yes, .NET tends to work better when you're coding to "enterprisey" use cases, that doesn't mean that your product team itself has to operate in a "large slow enterprise" way
(Plug: If you're a top notch .NET developer and you want to work with others who are as well, at a place that doesn't treat C# and .NET as second class citizens, hey, drop me a line.)
I guess I should have said that in my comment; that they're indicators. I didn't mean to imply that there aren't some good uses for C# and Java. You mention one and the other reply mentions another.