5 ms·
I started my career as a .NET dev, and until recently was the stack I've worked the longest with. I have fond memories of working with C#. However I am no long
by decafninja 5y ago
I started my career as a .NET dev, and until recently was the stack I've worked the longest with. I have fond memories of working with C#.
However I am no longer interested in any job that uses .NET and have removed all mention of C# and .NET on my LinkedIn and resume. This is because even despite great recent advances, .NET still seems to be almost exclusively used by tech-as-a-cost-center enterprise companies that I have no interest in working for anymore.
I'm sure there are some great companies in some corners of the world working with C# and .NET, but as far as I can tell, they are still by far, the exception, not the rule.
- christophilus 5y agoI’m in the same boat. C# and F# are excellent languages. But C# jobs are as you describe. F# jobs are practically nonexistent. So, I’ve moved on to other stacks. I do miss LINQ. Other than that, I’m quite happy with Go and Node+TypeScript.
- danjac 5y agoThat's a good point I don't see mentioned much about choice of tech stack and impact on career. It's not so much about the technical merits of the stack itself as about what kinds of companies and projects use that stack, and sometimes it might be worth learning some technologies you might not be particularly invested in if you want to work at those companies. It's not easy to switch stacks either - yes you can learn a new stack but you need those golden "years of experience" in your resume, making a switch an expensive and risky proposition, so you need to choose wisely.
- sbergot 5y agoIn the two companies where I have used .net software was the source of revenue.
- Merad 5y agoThe landscape has been changing rapidly since .Net Core (now just .Net) matured 3-4 years ago. As you say there are a LOT of big enterprise shops out there using .Net, but more and it's catching the attention of small companies and startups. I work at a small-ish (~300 employees) B2B SaaS that has a wide variety of legacy code bases: .Net Framework, Node, Ruby, Php, and a few others. We made the decision last year to make .Net our default choice for new projects.
- moritonal 5y agoI'll agree upfront that it's been adopted very corporately, but it's worth noting that the Unity game engine uses C# extensively. If you enjoy video-games and one of them is on this list[1] it was likely written in C#. https://en.wikipedia.org/wiki/List_of_Unity_games#2021 https://en.wikipedia.org/wiki/List_of_Unity_games#2021
- torginus 5y agoUnity's dialect of C# is not really the same as .NET's C#. Even though they've made strides to keep their version of C# up to date, the way of doing most things is not the .NET way. Unity has it's own dependency management, project system, runtime, idea of threading/parallelism, concurrency, networking etc. Usually when one gets involved in some language ecosystem, the language is the small part, getting to know the libraries, and the idiomatic way of getting things done tends to be the emphasis. Here the ecosystems (Unity's and .NET's ) tend to be quite different.
- moritonal 5y agoOh by all means, don't get me started on what they did to IEnumerator or awaits. Plus they _really_ fell into a hole by trying to compete with Unreal from a graphics perspective, forcing them down the route of having to write a compiler xD https://docs.unity3d.com/Packages/com.unity.burst@0.2/manual/index.html https://docs.unity3d.com/Packages/com.unity.burst@0.2/manual...
- torginus 5y agoUnity made tons of strange decisions over its lifetime. Like first, they picked .NET and it's Mono implementation, which wasn't as fast as the original one, but was decent - then they kicked up some stink with the Mono devs, leading to them shipping a Mono version that was at a point a decade out of date, and performed way worse than either Mono and .NET. Their first idea was, instead of updating Mono, what if they compiled .NET IL to C++, resulting in the monstrosity that was IL2CPP. If you are interested in what sort of C++ code it generated, here's a link: https://www.jacksondunstan.com/articles/4654 https://www.jacksondunstan.com/articles/4654 It's full of goto-s, helper method calls, and passing around these weird helper objects to every method. They triumphantly announced their perf gains - compared to their own old impl, which I remember being slower than Python at times. Then came Burst/ECS, like you mentioned, the former of which is working pretty well, but requires you to rewrite your C# code, with Unity-licenced dependencies, so even if you wrote a kickass dynamic tessellation library, it could be only used in Unity, because of said deps. The latter is still in forever Unity innovation limbo. Meanwhile in Unreal-land, they used pretty much standard C++, for a decade, no arcane space-magic ECS found here - and the code has been pretty much stable for that time.
- gameswithgo 5y agoThis seems an irrational decision, as tech first companies also use c#, and you are ruling them out because of a general trend.
- decafninja 5y agoCurious - other than Stack Overflow and obviously Microsoft, what other well known tech companies use .NET as their primary stack? In any case, before I removed mention of C#/.NET on my profile and resume, I would be bombarded with recruiter e-mails and phone calls advertising jobs at old school cost center companies, most of them paying very poorly too. After removing C#/.NET, these have gradually declined, and nowadays any recruiter that contacts me is for a job/company that I would generally be more interested in.
- masterof0 5y agoTesla uses the .Net Core/Angular combo for internal tools.
- hackerfromthefu 5y agoDo they pay well? SpaceX apparently doesn't
- masterof0 5y agoCompared with FAANGs and unicorns , not really, but if you believe their stock will explore in the future, is worth a try, I guess?
- decafninja 5y agoAside from pay, having SpaceX on your resume will probably open doors in the future that having some cost center company may not. Pretty sure SpaceX and Tesla would pay competitively to most cost center companies too. Though I hear Elon works his employees hard.
- wsostt 5y agoTechnology is still central to "tech-as-a-cost-center" enterprises. I'm absolutely a cost center and contribute to the firm's market differentiation by using technology effectively.
- decafninja 5y agoI've worked at cost center companies for my entire career but recently jumped to a profit center company. The difference in how tech and tech employees are treated is night and day. Pretty much every big company these days is driven by technology and would collapse without technology. But cost center companies tend to treat tech and tech employees as a necessary evil instead of a respected peer.
- rc_hackernews 5y agoI feel seen with this comment and I'm glad I'm not the only one that has been feeling this way. I'm about to start a new position that uses C#/.NET and seems like a technically mature/sophisticated organization. Finding this position was hard though. If that fell through, I was thinking of ways I could try to switch tech stacks. As you stated, the types of companies that gravitate towards .NET are not the types of companies I want to work for anymore. Not to mention, after talking to several recruiters, it seems like salary for .NET devs are much lower than counterparts in other languages. I'm probably at the top of what I can expect to make as a senior engineer in .NET. I spoke to a few recruiters who recruit for other stacks and my salary is what senior devs typically start at for those organizations.
- decafninja 5y agoRegarding compensation - I think that is more of a function of the orgs that tend to use .NET and not .NET itself. Most senior+ SWEs at cost center non-tech companies (frankly, the overwhelming majority of SWEs) would probably be lucky to retire as a sixtysomething seventysomething seeing $200-250k total compensation after decades upon decades of work. Meanwhile that amount is probably around what most run of the mill twenty/thirty/fortysomething senior SWEs at profit center tech companies (not FAANG!). Needless to say even some juniors are making that much at FAANG and other upper tier tech companies. If you can find some corner of a profit center tech company doing .NET, you'd probably be paid the same as any other engineer at that company. But these types of companies rarely seem to employ .NET.
- rc_hackernews 5y agoOh, I agree with you. It absolutely comes down to the organization. And like you said the organizations that pay very well...don't tend to use .NET. Which is what I've been seeing "in the wild". At this point, it's just becoming increasingly hard to justify sticking with it. Especially considering I could make more money and not have to deal with so much legacy or poor development practices all the time. In defense of those organizations though, in my experience, the interview processes have been very reasonable, i.e. no LeetCode. As long as you haven't been sleep walking through your career, it should be pretty easy to get a new position.
- strikelaserclaw 5y agooh yea, same here, i essentially made it a point to GTFO out of the massive gravitational field that is the .NET world at any cost.