Call Your Headhunter(bartoszmilewski.com)
bartoszmilewski.com
Call Your Headhunter
http://bartoszmilewski.com/2012/02/06/call-your-headhunter/
4 comments
The startups I've seen in the area are not really much more interesting than the Fortune 500 jobs. Working at US Health might be lame but is it worth the pay cut to work at a website for high school volleyball games, just to use Ruby on Rails? (or whatever)
I don't think that's true. I'm fairly sure Rails developers can make more money than commoditized Java programmers. I'm a consultant so maybe it's not apples-to-apples, but my rate is higher than "software engineer (Java)" at one of those Fortune 500s.
The key to a decent job is not working at a place where IT is a cost center. I will be the first to complain that there aren't many startups in the Twin Cities, but there are quite a few software companies and development shops. You can find cool jobs doing Java (or whatever you want to do) that pay roughly the same (or more) than the big companies that don't value software development.
Anyway, my point is: if your job sucks, try a new one! You'll probably get a raise for switching, and if you assess the new company well in the interview, I doubt it will be _worse_ than your old job.
The key to a decent job is not working at a place where IT is a cost center. I will be the first to complain that there aren't many startups in the Twin Cities, but there are quite a few software companies and development shops. You can find cool jobs doing Java (or whatever you want to do) that pay roughly the same (or more) than the big companies that don't value software development.
Anyway, my point is: if your job sucks, try a new one! You'll probably get a raise for switching, and if you assess the new company well in the interview, I doubt it will be _worse_ than your old job.
When I looked around last summer, typical contract rates were between $50 and $65 and salaries seemed to hover between $65-$80K even for experienced people. This was for anything, Fortune 500, the Nerdery, random 10 guy consulting shop, TST Media, etc.
It's definitely possible to do better than that. Hit me up sometime if you want to discuss it.
This is a false dichotomy. There is much more opportunity out there than working for MegaCorp or overhyped low-paying RoR startups, especially if you have the chops.
It's not a false dichotomy in Minnesota.
We do some cool ass shit and have an office in Minneapolis. And we're hiring. Email in my profile :)
tl;dr: organizations using '90s languages that forbid you to use features from the '90s are bad and you should leave them. Note: I understand that C and C++ are still great languages/tools for certain tasks/toolboxes, but a blog post about management not letting you using the STL is perhaps relevant only to the Mil-Aero crowd. [Or am I wrong?]
My last job was as a compiler guy at a large Electronic Design Automation company. The product I worked on was written mostly in C++, but we weren't allowed to use the STL. The reason was that the early versions of the product were written before the STL was stable across all platforms used at the company* (which included things like IBM AIX, HP-PA, etc.). So the original developers (back in the late '90s) wrote a number of container class templates that were used instead. Of course, once those were in place, you had to keep using them, as mixing STL and non-STL containers would have been a maintenance nightmare.
I would suspect there's a lot of old C++ software that falls into this category. Especially if cross-platform compatibility was/is important.
(*Actually, it was often insinuated that the STL is _still_ not 100% compatible between Linux and these more exotic platforms. I have no idea if this is true.)
I would suspect there's a lot of old C++ software that falls into this category. Especially if cross-platform compatibility was/is important.
(*Actually, it was often insinuated that the STL is _still_ not 100% compatible between Linux and these more exotic platforms. I have no idea if this is true.)
hmm, iirc, there used to be something called stlport by boris-fomitchev (sp ?) a looong time ago. which would allow you to use at least the basic subset of stl (containers/algorithms/iterators) across a wide range of compilers. not sure how relevant it is today...
It still exists, and it's still relevant /if/ you're in the situation Dave above describes - and you have sufficient clout to get stlport included in your code. In almost every other situation where you can actually use the stl, it's probably a better idea to use the libs that come with the compiler.
Also video game companies. Maybe not the management part, but there's a lot of resistance by game programmers to STL because of:
* Poor support in console environments, which often lag significantly behind their desktop equivalents (I'm not sure how relevant this is for PS3/X360/Wii, but it was definitely the case for the previous generation, and some things get deeply ingrained)
* Poor debug performance for some implementations
* Less control over low level implementation details, vs. rolling your own. Game developers stress out over this. STL is a general purpose library. Sometimes a special purpose library really is what you want.
Here's a relevant stackexchange discussion: http://gamedev.stackexchange.com/questions/268/stl-for-games...
And here's a paper discussing EA's STL replacement, with lots of justifications: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n227...
* Poor support in console environments, which often lag significantly behind their desktop equivalents (I'm not sure how relevant this is for PS3/X360/Wii, but it was definitely the case for the previous generation, and some things get deeply ingrained)
* Poor debug performance for some implementations
* Less control over low level implementation details, vs. rolling your own. Game developers stress out over this. STL is a general purpose library. Sometimes a special purpose library really is what you want.
Here's a relevant stackexchange discussion: http://gamedev.stackexchange.com/questions/268/stl-for-games...
And here's a paper discussing EA's STL replacement, with lots of justifications: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n227...
[deleted]
Well you might not be wrong but you're maybe reading it a little too literally. I fought for months to get management let us think about migrating to Git (from CVS!), and it never happened. (I left less than a month ago, before it ever was agreed upon). I think it's a similar situation, because although I'm not a C++ programmer, I believe STL is pretty heavily used and is not "cutting edge technology". I would argue Git is in the same boat, but even if you disagree, CVS is ancient technology. If you find yourself in this situation, and you're a programmer, "call your headhunter"! That's what I should have done months ago, and instead thought things could change. I think there are probably others like that and that's who this post was talking to.
Surely you must see the irony of typing up your zing about C++ being relevant only to the "mil-aero" crowd into a web browser that is almost certainly written entirely in C++.
I took that line as an example of management putting undue constraints on the options of developers, not that the post is literally about STL usage. After all, sometimes there are valid reasons for not using the STL. And sometimes, the constraints are worse than that.
I'm a member of the Mil-Aero crowd, and my problem is that I'm not allowed to use C++. I have to do everything in ANSI C (this is for a high-performance, massively parallel Linux application, BTW). I try to write OO C as much as is sensible, but end up getting ribbed by the long-time program members as being "one of the OO guys". I'm surrounded by people who think the art and science of software development hasn't really advanced since 1994 or so. That, I think, was the core of Andrei's message: don't put up with crap like this, call your headhunter.
I'm a member of the Mil-Aero crowd, and my problem is that I'm not allowed to use C++. I have to do everything in ANSI C (this is for a high-performance, massively parallel Linux application, BTW). I try to write OO C as much as is sensible, but end up getting ribbed by the long-time program members as being "one of the OO guys". I'm surrounded by people who think the art and science of software development hasn't really advanced since 1994 or so. That, I think, was the core of Andrei's message: don't put up with crap like this, call your headhunter.
Where are these companies desperate for C++ programmers? I've been really enjoying getting back into C++ for some DSP work I've been doing. So much so that I'd like to find a gig where C++ makes up a substantial part of the coding duties. But the job trends I've seen seem to be towards higher level languages.
Google, Apple, Avid, Ableton, almost any HFT trading firm, investment banks. Anyone not doing web software, or with web properties so large they have to write their own web servers. This place in MN was offering $120K to C++ programmers last summer: http://www.makemusic.com/ . Good salary and cool project for that area.
Title is stupidly funny! If you're a programmer do you really need to call your headhunter?
Maybe if you're just out of school? I know its hard to get in without experience, but once you have it gez...the market is crazy.
Maybe. What exactly do you want me to call him? I can think of a few things...
While the conference is usually dedicated to "progressive" software engineering topics (this year was Dev Ops; it's about 6 months behind the hype) the area is not a tech hot spot. There are some startups and dev shops doing cool stuff, but most of the attendees at a conference like this work at big boring Enterprise companies (banks or Fortune 500s).
Inevitably, the question comes up (usually several times): "My completely broken company won't let me use innovative technology X/methodology Y". There's some equivocation from the speakers about how you have to change from the bottom, keep pushing, blah blah blah.
I, on the other hand, get very annoyed. You want to work at a company that is more innovative? It's far easier to _quit your job_ and _go work at a better one_ that change the ossified organization you work for right now. I don't understand why people put up with it, with the job market like it is right now.
https://twitter.com/#!/lof/status/157614221872463872