.Net Programmers Fall in CNN's Top 5 In-Demand
GT_Alias writes "CNN Money is reporting that .Net programmers are one of the top 5 most in-demand jobs. Of the positions where recent surveys have indicated a labor shortage, .Net developers and QA analysts are the two that fell under the 'technology' category. According to CNN Money, .Net developers can make between $75-85K starting out in major cities, with the potential to make 15% more if they have a particular proficiency. Additionally, QA workers can make $65-75K a year with the ability to negotiate a 10-15% pay jump if they switch jobs. How does this information compare with the Slashdot crowd's real-world experience?"
It must be because I can only program Java. *sigh*
Join the anonymous, help develop the network: http://www.i2p2.de
From TFA: "Microsoft's software programming language .NET"
.NET's a platform or function library if you will not a programming language. Not getting your facts straight doesn't inspire me to have a lot of confidence.
Also, I see a lot of new QA jobs emphasizing programming skills, thus driving up the wages. These days, excellent QA organizations will devote at least 50% of their efforts towards automation, either by building their own suites or leveraging off-the-shelf solutions. This is good for QA folk who eventually want to migrate into development, as they'll gain valuable skills along the way.
Are we talking ASP.Net? Are we talking SQL Server 2005 c# stored procedures gurus? Are we talking J# Nhibernate & Nant wizards? Could we possibly be talking about .NET Portable CLR professionals designing VOIP applications for Windows Mobile 2005?
Honestly, wihtout specifying the phrase ".NET Developers" more precisely the discussion will become meaningless.
My POV: a new college graduatre who can barely create encapsulated objects is not going to be pulling the same money as a Java turned C# enterprise framework analyst who writes the patterns published in those clever books.
They who would give up an essential liberty for temporary security, deserve neither liberty or security - Ben Franklin
The article says you can earn big bucks if you know the 'dot net' language. Trouble is, there's no such thing (unless you count MSIL, which you don't).
A whole bunch of langauges actually target the dotNet runtime (c#, visualbasic.net, j#, etc). My guess is that after a few years of head-in-the-sand, a metric crapload of legacy visual basic projects suddenly need porting to a platform with a future.
I've been brainwashed by slashdot users and most of the IT crowd on the Internet to go ahead and learn open source languages and applications and not to learn .NET, as it is Micoshit.
.NET.
To my surprise, the IT crowd with the big voices on the net are not in-tune with reality.
Most of the jobs out there require you to use
I'm a C#/.NET developer here in Australia, been doing C# for the last 5 years within a diverse range of industries. Prior to that I was a C++ dev for about 12 years. Before the dotcom crash I was on a 6-figure salary, now as a C# hack I earn about the lower end of the figures quoted - in Australian dollars (about 3/4 the value of US dollars).
One thing though, I got sick of the constant crap in C++ just spending more time on the stupid COM plumbing and myriad datatypes than actual applications work. Going to C# was a damn breath of fresh air. I LOVE it. I can actually get useful shit done that does stuff for the END USER of the the product and after all that's what the company pays me for. Perhaps I should just move to the US but with the god-bothering, shootings and rampant intake of GE food I think I'll give it a miss thanks. Oh and the lack of more than a week or two holidays... gackkk.
Anyway, just because it's easy to learn doesn't necessarily mean that it's a bad programming language.
No, but sooner or later it means that there are a bunch of colleges churning out people who've become "experts" having taken a 6 week course in the language with no prior IT experience.
Doesn't take long for it to become apparent that so many people who claim to know the platform are inexperienced fools. Once that happens, salaries drop.
As rule of thumb, may be it is better for you to invert in general Computer Science formation (generic OS, compiler understanding, computer architecture, algorithmic complexity, et al), not just the "follow the last wave formation". Most people doesn't ever consider that it is dangerous to be extremely especialized. This applies to any platform-specific developing environment.
In the long way, you'll have to switch between many OS, compilers, languages, etc. Sometimes you have to be pragmatic, just to pay the bills, but take conscience about that the IT field is very variable in the surface, but sound in the fundamentals. This is why I recommend generic Computer Science formation when young people ask me for an advice (plus some other "last wave" preparation, just in case).
Will someone please explain to me why syntactical ease equates to a "stupid language for monkies"? Just because C# developers don't have to worry about and juggle memory pointers, it doesn't imply that their job is automatically "easier" and therefore "worse" than that of a C/C++ developer. They still have to worry about good OO design, portability of code (yes, even in a VM language like .NET), and just all around good software engineering -- same as a C/C++ developer would.
.NET Framework gives everyone an even playing field -- it makes code extremely supportable by a wide range of people; everyone who knows .NET can support an app written against the Framework. Not so for C/C++, a windows/Visual Studio C++ developer would certainly struggle after being tossed into a Unix development environment.
Furthermore, just because C/C++ is a "faster" language, that doesn't imply its better suited to web development, or even windows app development. A strongly typed language with a predefined API like the
Now, this is the same argument as most people with common sense make with Java -- no on says its the right tool for every job, but it certainly can be the right tool for a lot of jobs. The same with C++. Do you really think we ought to code our web apps in C/C++? IF so, then why not just go all out and do it in assembly?
I'm in the (un)fortunate position of seeing .Net and J2EE being used sideby side in the same application, and I don't get why people are using .Net in the enterprise. It can't be because CLR is faster than the JVM, it isn't. It may be fair to say that, for a bog standard application, .Net development is faster (Visual Studio is an excellent tool), but as soon as you start to push its framework (as all real applications do) the .Net teams fall behind the J2EE teams.
.Net and, if your on a budget, everything can be got for free. Need support? Buy WebLogic or JBoss support. Need training? Sun are more than happy to oblige. Need developers? You can't spit without hitting a J2EE developer. Need the source code? Sun will hand it over, for free, just don't expect any changes you made to be put back into the source tree, or them to give you any slack if you try and distribute at all - its not the freedom that OSS would like to give you, but its better than .Net.
.Net developers. If I was starting out in software development again, I'd be still be looking to start in Java, and expect to move over to Ruby on Rails (or whatever is flavor of the month) in 5 to 10 years. Assuming people who make IT descisions get smarter, and OSS continues to get stronger, I can't see how any company selling enterprise grade software will be selling anything but the time and experiance of their staff sans the licencing fees of the tools and server software to their customers. How else will western developers compete with China and India?
Java gives you choice. Choice of IDE, choice of framework, choice of application server and perhaps most importantly choice of platform. All that and it runs as fast as
So is it any wonder that there are less
Scared of flying, pointy things snce 1979!
Interesting, this past week there was another article about the potential for elimination of QA staff due to agile programming techniques:
a d_id=38785
.NET positions too, although I don't think it is any stronger than the increase in Java positions. The demand for software developers has really picked up, and, just informally from the ones I have talked to, most head hunters are reporting being overloaded with opportunities to place people, as much as a 250% increase in demand for people over a few months ago.
http://www.theserverside.com/news/thread.tss?thre
Software quality management is maturing into a discipline unto itself, and becoming much broader than testing. Manual testing is being replaced by automated tools.
Up here in Canada, I have seen an increase in the number of
FREE - Java, J2EE and Ajax Audiobooks for Software Developers - www.DeveloperAdvantage.com
You should just buy a book and learn it yourself. Do some real projects that you can demonstrate to the interviewers if you don't have any real world experience. You can use Mono if you want, or use the VS.Net Express Edition to get started. Once you get into more complex stuff, it'll probably be better for you to get real experience with the real VS.Net IDE. It's a pretty powerful IDE, and I like it a lot. There's a few things I'd like to change, but otherwise it's pretty good.
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
Let me guess: they can't find programmers with 10 years .NET-experience?
Download the Express editions of visual XXX.NET and then go watch the streaming multi-media lessons. http://msdn.microsoft.com/vstudio/express/vwd/lear ning/default.aspx
If you've done any real programming it seems fairly straight forward and the express software is similiar enough to the real stuff. The beginning lessons do a fairly decent job of showing you how to use the IDE which I think is probably just as tricky (if not trickier) than learning a new syntax.
Damn that i burnt all my mod points this morning. This is EXACTLY what I'm doing right now, as part of my master thesis. For all the Swedes out there, that already have some programming skills, I would strongly recommend reading Anders Forsberg - Programmering i C#. It concentrates on the parts making C# different from other languages and cuts the crap out. Add to that some kind of .NET Framework overview book, and you should have what it takes to get at least decent on your own.
Also, Visual Studio isn't a good IDE - it's a great one (especially compared to some of Microsoft's other software offerings). And I'm usually in the *nix crowd. Possibly vim or emacs are better, but they have a really high entrance barrier...
I have a really elegant proof for Fermat's last theorem. If this sig was only a bit longer...
Ever try and write an enterprise level application, even a web application, in perl? It's great for small internal applications; that CPAN doo-hickey works just great.
But CPAN bites you back when you hit the limits of what those modules can do in a large-scale application. When you hit the limit of what is the easiest and arguably the best (and arguably not) ORM out there, Class::DBI, there's 150 different, incompatible modules out there to do what you want. Which one will be maintained? Which one silently overwrites methods deep within more established modules and doesn't tell you? Want one that adds support for limit and sort by? One module gives you that easily, but not with the same interface as the other 10 that are more full featured. Which do you choose?
Don't even get me started on trying to send an email with Perl. CPAN seems to have a new module for sending email every other day. It's become less of a one-stop shop for the modules you need and more of the perl newbie ftp drop site for modules no one could possibly need or want.
As an example, check out what's been uploaded today. Version 0.02 of JavaScript::MochiKit, helpfully described as 'makes perl suck less', with 15 classes and less than a page of documentation. Great! Just what I was looking for!
There's also a module for interacting with MySpace, two versions in the same day of of an XML parser (writer? who knows, I didn't read it) for a data format used by the library of congress (from the same proud author of version 0.3 of Acme::Voodoo, described as 'Do bad stuff to your objects'), version 0.18 (version 0.17 was yesterday's) of DBIX::Class::Loader, a copycat of Class::DBI::Loader for this self-proclaimed CDBI replacement (which is probably needed, but god help a perl newbie who shows up on CPAN looking for ORM nowadays). It's 2pm my time (Austria), meaning it's 5:30 central time, and there are already 9 modules with version numbers less than 1.0 uploaded to CPAN.
Now don't get me wrong, this is fantastic for a small scale app. I'm sure someone will get some use out of a MySpace profile accessor in perl. But what makes CPAN, and perl, great for small-time stuff makes it just terrible for enterprise applications.
As for perl's portability...do you really expect to make an argument that a language that is, in quite official terms, defined by the official compiler is portable? Perl runs on windows, but since perl.exe IS the language, differences between it and the unix versions aren't even technically bugs...they just ARE! It's not a proper way to 'run a language', so to speak.
I've been programming in perl for years. I get paid well for it. I don't plan to stop using it for my insignificant applications. But I know damn well why it's not in demand.
nobody
What list/article were you looking at?
He don't need no stinking lists! He once talked to a guy who once sat next to a guy who's brother read the VS.NET EULA! Live and in person!!! 'nuff said! Do not question his authoritaaaaa!
"reality has a well-known liberal bias" - Steven Colbert
I am graduating this spring from a major state university in the south. In our program we have learned such things as C, C++, PHP, Perl, Ruby(currently learning), Java, Javascript, and various other things in the Unix/Debain Linux environment. It was recommended by the Managing Principal of a software consulting firm that I learn the .NET suite on my own. Since I have done so and put C#.NET,ADO.NET, and ASP.NET on my resume the interest in my skills has gone up considerably. Just about every interview I go on now the employer is mainly interested in my .NET knowledge. I have found that the automatic code generation in VS 2005 allows me to spend more time on security and correct by design (not correct by testing).
Furniture repairman at Microsoft.
I would be ashamed to be a *dot* net programmer. Use Debian or similiar distro, and you can get programmers from all over the world.
.NET (C# corporate whore)
Meh. Shame has nothing to do with it. Feeding 3 kids, paying down a mortgage and putting gas in my Saturns has much more influence over me than your philosophical bullcrap. Shame... What Ever.
Final analysis: code is code is code. If coding for OSS projects floats your boat, then do so, Its a free world. I use Debian too, just not @ work.
BN, MCAD
Cheers, my man
Today is a good day to code.
Take any valued development skill like Java, C#, Oracle or SQL Server and add a few years of practical business knowledge such as securities trading, financial analysis or international taxation and these salaries can easily be doubled. I've seen hedge funds in my area looking for C# developers with securities trading system knowledge willing to pay $120k to $150k.
There is a lot of money to be had if you can understand business people and turn there needs into tools and applications quickly.
WARNING: WE HAVE NOT CONDUCTED A FELONY-CONVICTION SEARCH OR FBI SEARCH ON THIS INDIVIDUAL.
Wish I had mod points! Exactly correct, langauge really means nothing and I find this lists about as worthless as can be. Technology changes fast enough as it is, you don't need to make it worse by spending your career constantly chasing around the "hot" new programming language hoping you'll make a few extra grand a year!
Rule number 1) gain a solid understanding of computer, programming, design, network fundimentals. I doesn't matter if its Linux/Windows, Java/C++/.NET, etc, etc.
Once you have this solid foundation to build on then decide what industry segment you'd enjoy working in and learn that business segment inside and out.
I know as techies we often don't like dealing with getting our selfs "dirty" dealing with the business, we just like the tech but that will lead to a frustrating career in my opinion. Programming is becoming easier and easier, there is getting to be less and less value in being able to program any certain langauge, you can spend you entire life jumping between industries chasing the a few extra bucks in the lastest langauge or become an expert in an industry (where the real money is). When I'm looking to hire someone I couldn't care less what languages they know! As long as they are decent programmer its easy to teach them a new langange. Whats much more difficult is teaching them the fine points of our industry. So be it finance, retail, manufacturing, gaming, ect, etc. I think knowing a busniess well is much more important than what langauge you know.
"reality has a well-known liberal bias" - Steven Colbert
Anyone who confuses unit testing with QA shouldn't be developing software.
(Sorry, I'm not going to summarize a couple of decades of SWEng experience for Slashdot, just do more reading on the subject.)
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
The real skill that a programmer needs if he or she is going to make it is adaptability. Stop thinking in terms of languages, period. At the core, unless you're having to do some pretty wild coding, most work pretty much the same. Think in terms of projects. If you're a freelancer, you'll want to have your finger in lots of pies, and if you're an in-house programmer, well, you know, the boss man is going to tell you what you're coding in. Flex the conceptual skills, because last week it was Delphi and VB, yesterday it was Java, today it's .Net, tomorrow it will be Ruby, and who the hell knows what next week will bring.
Like it or not, the programmer is just as much a slave to consumerism as anyone else, though it comes from a different angle. Managers and customers are sold platforms and languages by marketing guys (you know, the kinds of guys that get these sorts of articles planted in CNN), and you're going to have to adapt. It's really sucky, but that's the nature of the game. It's not like the olden days where a guy could learn Cobol and have a job until he dropped dead into the card reader.
The world's burning. Moped Jesus spotted on I50. Details at 11.
I have been working in NYC hiring developers that do C# development at the expert developer level for some time now. I am currently working for a boutique consulting firm .. Finetix (http://www.finetix.com/) .. doing software development for the major investment banks and hedge funds in NYC and London mostly. They do Java and .Net development - and the .Net pull is STRONG. We cannot hire enough STRONG developers. I have been interviewing developers for full time and/ or consulting positions for the better part of the last 4 years in the NYC area. The market for software devlopers that can program C# is very strong right now. A friend and collegue of mine posted last week on his blog http://magmasystems.blogspot.com/ that the baseline salary for strong C# AND Java devs in NYC area is ~150k$. I agree with this. I can say that companies want C# devs for building DESKTOP APPLICATIONS in the major banks, funds etc. Swing does not cut it yet - sorry. VB is old and dead. I hate to break the news to all you Flamer Style OSS or die slashdotters - but MS makes a great programming model for building insanely rich desktop applications.On top of that EVERYONE IN MOST PLACES HAS A WINDOWS DESKTOP. Traders that make millions of dollars doing what they do DO NOT WANT WEB APPLICATIONS. They need RICH desktop applicaions (always N tier communicating with web services, message queues etc.). There is a super strong need for REAL software developers (not ASP kiddies or VBers just awakened). That all said - I am typing all this on my laptop running linux, I can code in C# as an expert, Java at the mid level - I can program Ruby some as well as some C++, and lots more. I can say that having lead teams of developers - YOU CAN DO AN AMAZING AMOUNT with C# and .Net. I have led teams to build both the 30th and the 60th busiest sites on the web for a former client - all .Net/ C#. It works. I have seen one after another huge class desktop/ N tier 'smart client' application be build succesfully using .Net on the client at least. It works. It pays the bills. Do not discount or flame it as it shows you do not understand it. Accept that C#/ .Net is here - it is ready for the enterprise. People are making great money doing it.
Enough ramble from me;
Chris
" I have no tag line. "
This is exactly why
This attitude is exactly why the perl culture is not going mainstream. This is the attitude of someone who refuses to work with a team that hasn't forced him to respect them. This is how primadonnas think, and not the way the people who have those
This misses the point of my original post. I never said I couldn't find a tool to send an email. I said that CPAN is a clearinghouse for unfinished, in development, and first-time libraries. Net::SMTP does in fact work rather well. I've used it. But, say I were showing up to CPAN the first time. A search for 'Send Email' (most people are thinking about emails, not SMTP), brings me to Email::Send, Email::Send::Sendmail, Email::Send::NNTP (this doesn't make much sense), Email::Send::Qmail, Log::Dispatch::Email, Test::Nightly::Email, Mail::Spool, Mail::Sender, Mail::Sendmail, Mail::Send, Mail::SendEasy, and there are even more. This is ridiculous; it would be impossible to make a business justification for choosing one over the other.
Compare this to the MFC, which, while not NEARLY as extensive as CPAN, is MUCH better documented, is standardized, and it's a safe bet.
Why not just use the MFC and write your own, if you have to pay attention to the guts of the library code? A business wants to be able to say: we can be SURE of our library code, and we wrote everything else ourselves.
I'm not trying to say it's better or worse, the whole perl culture thing. It can be quite good, actually, and I think other language communities should take a hint from perl in some areas, especially some of those libraries which arose out of the system I am so quick to disparage. There should be something as good as DateManip in every standard library, and Date::Simple lets one use dates almost as easily as a primitive, which makes life SO much goddamn easier, to be frank. I understand that perl has definite advantages.
But that is just not what a business is looking for. Both of the parent posts to this smack to me of elitism. That perl is better than some other language for some reason. It's not the language. It's the culture surrounding it. It is, no offense, people like yall who think that management is stupid for going with the trend. Software is a means to an and, and not a means unto itself. The tools for creating a tool, by and large, should not be out of the ordinary.
nobody
Ok. I learned OOP in my freshman year too. Then, after graduation and a couple years of experience I realized that I didn't know shit on my freshman year. OOP really is something that takes both experience and theory to be really powerful.
In fact, I'd say the first two years after graduation I was a pretty crappy developer. I didn't know it of course, but later it has really hit me.