Ask HN: Career change from general java dev to cyber security/machine learning - <AUTHOR> I received a computer science degree ~12 yrs ago and have worked successfully in the field as programmer, team lead and dev manager. Most of my experience comes from developing enterprise apps in Java.
While I've had a successful career thus far, consistently get great reviews & make a good wage, I am also getting ... bored I guess.
I'm considering various options -one idea that's piqued my interest lately is furthering my education a bit (would have to do online learning) and making a transition to working in a more specialized area of comp sci such as cyber security or machine learning. I don't have much experience in cyber security (have done some pen testing/fixing of java web apps -OWASP type stuff) and have virtually no experience with AI/machine learning concepts. I just find these things fascinating.
I guess I'm curious: Has anyone made a similar career change from a more general developer type of role to something like cyber security or machine learning? How did that go for you? What should my expectations be and what are some suggestions for investigating and going about this?
Lastly -I don't work in or near a big city and would probably have to work remotely (I've been doing remote Java consulting successfully for a while) or move. Not sure if these specializations are conducive to remote workers so I wonder if anyone can shed any light on that. <comment><USER2> Of the two I'd get more involved in machine learning. For a couple of reasons:

1\. Ultimately I think it'll be easier to get a remote job. ML is in high demand and requires dedicated, focused hacking time. This means remote is more do-able. Generalizing -- Cyber security interfaces significantly with people and process across the whole of an organization, so tends to require more face time.

2\. It's easier to experiment and learn ML on your own. Grab a project, come up with some ideas and then get them up on Github. That's much hard to do in the security realm.

If I were you, I'd see if you can carve out some time for a passion project. Pick up a ML framework and see what you can do. Put it up on Github, write some blogs. You'll see how passionate about the space you are, plus build out the start of a CV.

<comment><USER3> Respectfully, none of what you said has been my experience.

Remote work is available for competent security engineers and consultants in spades. Entire teams at Optiv are distributed across continents (or they were when I worked there, back when it was Accuvant). Delve outside AmaGooBookSoft and you'll find many companies are quite amenable to remote employees for their internal teams, too. Check /r/netsec's hiring posts.

As for learning on your own - I'd cautiously disagree here. If your goal is to learn appsec and you're already a competent developer, you can do that by picking up literally one or two textbooks and participating in bug bounties. Job offers will be more or less thrown at you if you have a pulse and have found more than, say, three non-trivial vulnerabilities in recognizable programs. The companies themselves will often try to recruit you.

Machine learning is, like a lot of software engineering, easy to pick up and play with over a weekend, yes. But it is more difficult to become competitively competent right now for two reasons: 1) the field is exploding with incoming talent looking to capitalize on the new AI wave and 2) the amount of research you'll want to keep up with to stay informed is much higher than infosec.

To be fair though, I still believe someone can pick up machine learning. It's just that (most of) information security is rather more straightforward to ramp up to competency, in terms of resources available.

<comment><USER2> "you can do that by picking up literally one or two textbooks and participating in bug bounties" is a good idea and certainly something I hadn't considered. My main concern was bootstrapping yourself into the area, so that's an interesting approach.

I read "cyber security" a bit more broadly. You can certainly be a great appsec-type -- but I still personally believe spending time in and around organizations is really important to be in security. Do take your point there are large domains and specializations where that's less true.

Arguably this will be the same in ML at some stage. In actuality I think devops-for-ML or testing-for-ML is a more agreeable place to get started. It's pretty underserviced right now.

Ultimately I think best to follow the passion. Give both a try and see what feels best.

<comment><USER4> There are subfields of infosec where organizational understanding and savvy is important. But if you're a technologist, most of the real action in the field is in appsec and, at it's most specialized, high-status end, vulnerability research. Appsec doesn't much care where you're located, or really even how well you understand the org chart of your target.

</comment></comment></comment></comment><comment><USER5> I went from lead dev (and head of development with 10 years experience) to security consultant about 6 months ago, as security was always a hobby of mine.

If you look at my previous comments I always say the same thing: get the OSCP certification. It will definitely get you an interview but the course is hard and demanding.

Also, get ready to take a paycut and a role downgrade as 4 years of pentesting have more value than 10 years of development.

Obviously you bring other skills to the table like better client communication and knowing how things work under the hood, but you'll have to take a step back before you take two steps forward.

I definitely recommend you go that way, but think hard before you do, and please be sure it's not because you're "bored".

Last but not least, prepare to travel to clients. Sure there is the "internet" and "vpn" but a lot of clients have internal apps need testing and do not give you remote access.

If you have any questions I'll be happy to help out.

<comment><AUTHOR> Thanks, helpful for sure. Yeah I'm not looking just because I'm "bored", I suppose it's a myriad of reasons but that is one of them.

Why did you decide to make the change to security consultant?

How were your security skills before you decided to make the change? You said it was a hobby, but for how long? I'm thinking I'll have to carve off time for a while to invest into learning the new hobby then see where I'm at in 6 months time.

<comment><USER5> The reason I switched was because pen testing is in really high demand and will stay that way for a few years to come. Also, I didn't want to get full time into management at this point.

My security skills were average (hobby for about 10 years but mostly because I was a web developer) but like I said the OSCP did most of the work in terms of getting the interview and doing any technical test. The course itself took about 2 months, 6 hours every day after work, and fulltime weekends!

My suggestion would be to do the OSCP course and if you like it then go for it. There is also vulnhub.com which has a lot of CTF VMs where you can practice (I personally dislike CTFs because I find them unrealistic).

</comment></comment></comment><comment><USER6> >I don't work in or near a big city and would probably have to work remotely

The specializations are both conducive to remote work. However, they aren't conducive to remote work for people that don't have a good amount of experience in that role.

You can definitely make the switch to either of those things, but you have a long road ahead. If you know specifically what sub-field of security interests you, I might be able to give you some more insight.

<comment><USER7> I am actually in a similar boat. I have done a lot of java work, and was active on the security side of things in my previous role. I mostly worked on compliance, but I did some pen testing.

I can see compliance not being friendly to remote where pen testing would be a lot more friendly.

I know security is a big field, but I would love to hear any insight that you have on it.

</comment></comment><comment><USER8> I know little about either or, but there's a micro masters course (five courses in total) on cyber security over at edx which started five weeks ago, give or take. You could audit the class to check it out. With your experience and what we've seen so far, shouldnt take you much to catch up. That is, if your time permits it.

<comment><AUTHOR> Thanks, yeah, I was looking at cyber security specialization at courseera and will take a peek at edx too. Definitely all comes down to time for me since I still work full time and am raising kids but I can find a way to carve out the time.

</comment></comment><comment><USER9> I didn't make quite the transition you are talking about, but I went from a general software lead position to being a security and systems engineer at a cloud provider and it has worked out rather well. I suspected that I would enjoy my new job and I have, I definitely get to learn a lot of new things everyday and my resume is looking pretty slick now.</comment>


Apple's brewing shitstorm - <AUTHOR> http://scripting.com/stories/2010/07/14/applesBrewingShitstorm.html <comment><USER2> Apple's done a crappy job dealing with the antenna fallout. At the same time, the press and other attention seekers are blowing this way out of proportion. I've seen some compare the iPhone 4's antenna issues to Toyota's accelerator disaster (which I always suspected was largely manufactured by the press and politicians), demanding a recall. That's just hilarious. At worst, they should give out free bumpers until they can fix the design.

It's still Consumer Reports' highest rated smartphone, and the antenna problem has a variety of easy fixes. I can't say I'm that impressed with the phone (for all its improvements, it's a big step back ergonomically), but most of the controversy is manufactured. I'm sure it's done wonders for pageviews, though.

<comment><USER3> _I've seen some compare the iPhone 4's antenna issues to Toyota's accelerator disaster_

That would be grossly unfair to Toyota. There's a measurable and reproducible problem with the iPhone 4.

<comment><USER2> True. But the people making that analogy are attempting to transfer the life- threatening gravity of faulty cars onto, well, an antenna. The gross unfairness goes both ways.

<comment><USER4> Apple started the war by making their design decisions out to be things of monumental consequence. When you portray your each and every device as a mind- bending magical artifact that will change your life, I think it's fair to look at the shortcomings through the same lens.

That said, I wish we could just stop dissecting each and every Apple product. I'm tired of hearing about it. It's a piece of engineering, it has features, flaws, and useful applications.

<comment><USER5> Well stated. Anyone who suggests that we need to be giving Apple a break for gloating about a new amazing magical antenna design and not calling them on it not working needs to realize this. The same perspective/lens should be used. It's not our fault Apple feels the need to gloat and spew words nearly referencing fairy tale unicorns. They should be prepared for some lash outs if they're going to deliver a phone that fundamentally doesn't even perform as a phone well, when they're boasting so much.

</comment></comment></comment></comment></comment><comment><USER6> Speaking of Microsoft, this article reminds me decades past when geeks would whine about Microsoft day after day, year and year. But did that actually accomplish anything? No, the tides did not turn until changing times started to turn Microsoft's cash cows irrelevant by default.

Similarly, Dave Winer releases a very well-written piece decrying Apple's hubris and bad faith, then signs off saying, "Oh btw, I wrote this on an imac while checking my Apple stock on my iphone."

I mean WTF? Apple does not give a _fuck_ about Winer's whining. If Dave and 1,000,000 other people decide not to buy an iPhone then guess what, Steve will care. But he didn't make Apple the success it is by listening to geek ideals.

Guys, isn't it obvious? The antenna problem is inherent to the very design of the iPhone 4. Whatever they did with their signal strength update (which may well have been a lie to cover up a lie as noted by others) was basically all they could do short of going back to the drawing board and completely retooling the entire thing from scratch. Can you imagine the cost of that? Apple is going to take a wait and see approach here. They're not going to bite the bullet unless sales start to take a hit. Most likely this will blow over because they the device is so amazing in other regards, and we'll see that the 2011 revision fixes the problem. If it turns into a real problem they'll take their lumps and fix it mid-cycle, but not because of bloggers whining about it, it'll be because their bottom line is hurting.

<comment><USER7> >Similarly, Dave Winer releases a very well-written piece decrying Apple's hubris and bad faith, then signs off saying, "Oh btw, I wrote this on an imac while checking my Apple stock on my iphone."

I took that as heading off the crowd that would start up with ad hominems claiming Winer only wrote this because he hates Apple and wants to see them fail. He _wants_ to see them succeed, which is why it sucks that they've handled this issue so poorly.

And I mean, I understand where he's coming from. I think Apple has traditionally built great products and I love my Macbook Pro. That said, I disagree with their walled-garden approach to the iPhone and it's looking increasingly likely that I'll be replacing my MBP with a PC notebook running Linux because of the way they've let OS X stagnate over the past few years.

I _want_ to see Apple continue to make great products, and if they build products I want, I'll buy them. That doesn't mean they get a pass when they do something I think is stupid, however.

</comment></comment><comment><USER8> What happened to "all PR is good PR"?

I don't have real numbers, but 3 weeks into the launch, more than 2 million phones have been sold. How many have been returned? Versus how many people that want one don't have one yet?

What's the new Android phone again? All this Apple talk is drowning out all other phone news. If I think back really hard, the EVO launch was met with bitching about poor battery life. Lots of "not recommends" from reviews. But nobody feels any passion towards HTC to call for a class action lawsuit.

And my friend that has an EVO loves it. It's a sweet phone. I love my iPhone 4. My girlfriend still loves her iPhone 3G. All these phones are sweet, it's a good time for gadget lovers.

I'm sure Apple doesn't want this, but it really doesn't matter to them. A software update will come out soon that will shine more light on the problem. A hardware revision will come out probably sooner than later now with a sensible exchange policy. Apple's customer service is impeccable.

<comment><USER9> Remember that the rest of the world can't buy it yet.. I've been reassuring my brother-in-law that it's a storm in a tea cup but I'm starting to doubt that now...

</comment></comment><comment><USER10> On the topic of Apple he is spot-on, but the fact is Apple's PR team is untrained because Steve Jobs _IS_ the apple PR team - every semi-crisis / etc he addresses personally.

I expect that with critical mass unfolding Steve will come to the rescue, but it illustrates how entirely and completely dependent on Steve Apple is - it's not just product design or inspiration . . .

<comment><USER11> out of curiosity, does steve hold it differently or does he use a bumper?

<comment><USER12> Someone holds it for him, but they are of legal age, do not work sweat shop hours (they work in shifts) and they pay taxes.

</comment></comment></comment><comment><USER13> Can someone who can get to the page copy/paste the text? It's down for me.

<comment><USER14> Seriously, 20 points, 1 hour old - might be time to add more hardware, Dave.

<comment><USER15> Pretty sure he runs his stuff on Amazon EC2 - frontier maybe crashed?

<comment><AUTHOR> The site is served by Apache.

</comment></comment></comment></comment><comment><USER16> The pile-on begins. I see Computerworld is now saying the iPhone 4 is Apple's version of Vista.

<comment><USER17> But there wasn't really anything wrong with Vista. The rebellion against Vista was largely a psychological thing, users revolting because they _hate_ it any time anything changes. I don't think there was any "real" problem with Vista if you were running it on adequate hardware. I guess a big part of the problem was that Vista was getting installed on bottom-rung $300-$500 laptops and dragging everything down.

<comment><USER18> There's no good reason why Vista shouldn't have been able to run on 1GB ram laptops. It was so slow on my parents (new with vista) laptop that it made me want to scream using it. They upgraded to 2GB, and it was still pathetically slow until SP2 came out and fixed it. It works pretty decently now.

Clearly, there was something wrong with Vista.

<comment><USER7> Growing pains with a new memory manager. Vista has always been fundamentally solid as long as you had the hardware to match.

<comment><USER18> More than 2GB of ram, back when vista launched, for a consumer grade OS? Seriously? That should be a launch-blocking flaw.

I'm not suggesting that their underlying architecture was irretrievably broken, I'm saying that it just wasn't ready for consumers when it was released, and it thus deservedly acquired a bad reputation.

</comment></comment></comment></comment></comment><comment><USER19> Is probably going to subside after the press conference on Friday.

</comment><comment><AUTHOR> <http://gizmodo.com/5588146/apples-brewing-shitstorm>

</comment><comment><USER20> Small data point, but my iPhone 4 gets better reception than my iPhone 3G.

<comment><USER21> you mean it displays more bars?

</comment></comment><comment><USER22> Linkbait much?

</comment><comment><USER23> Denial and hesitation seems to be Apple's modus operandi (they aren't the only ones).

As a software developer the bit about their algorithm for determining signal strength is absolutely ridiculous. IMO they probably released an update that actually faked your signal strength in order to cover up the crap antenna. That sounds more reasonable to me.

Remember back when Snow Leopard was deleting user data if you used the guest account? Refresher here: <http://news.cnet.com/8301-31021_3-10373064-260.html>.

Does anyone remember how long it took apple to solve that problem? It was despicable and completely disrespectful.

IF Microsoft had the same issue with Windows they would have patched it overnight; not waiting to fix things with the same time table that BP uses to stop an oil leak.

I'm a linux user (#!) and I also own a mac. I use windows professionally for my job. Things do not "just work" on a mac. If you think so then IMHO you're not using much of your OS.

In the end I would choose Linux, Windows , then OSX. I _used_ to claim that Apple's hardware was superior, but never again.

<comment><USER24> Never again? Despicable and completely disrespectful denial and hesitation?

My counterpoint, not to dismiss legitimate concerns that the huge number of customers affected by crappy AT&T coverage have, is twofold: Denial is spin, PR. Hesitation is having less R&D resources to do anything about it. It's well known Apple has a smaller headcount than Microsoft, and values certain things more than others.

Mr. Winer and you are totally entitled to your opinions, but mentioning the axes you have to grind in your criticism of Apple aren't great ways to be persuasive.

In order: OSX and Apple's hardware, because its worth owning, and nothing else. ChromeOS(via Hexxeh, at this point) can't adjust screen brightness. Ubuntu can't support 'proprietary wireless chipsets' on first boot - like it should matter. Vista was difficult to use for everything, it was disrespectful anyone got stuck with any of the 7 flavors of that turd. I looked at the font on a blackberry yesterday and could barely make out numbers; it's just so crappy.

Embrace the black plastic of all these windows-bundled laptops, I'll enjoy a machine I need to use for hours on end that feels designed and extruded instead of matte and injection moulded.

</comment></comment><comment><USER25> a) Buy a case. b) Don't hold it like that. c) Take it back.

How is it my totally technically illiterate wife can use this device to make calls, but internet bloggers cannot?

<comment><USER26> I equate Apple's problems to the Nintendo lawsuit over their wrist straps. Not everyone was throwing their controllers through their TV screens, but the select few who did caused an uproar. It also didn't stop Wii consoles from selling like hotcakes either. It took a class-action lawsuit to get Nintendo to take action. The solution was very simple -- give everyone free wrist straps for each of their controllers.

I think Apple needs to take a similar step to alleviate the problem.

<comment><USER27> Great analogy. You even had the PS3 (Android) and Xbox (Blackberry/RIM?) fanboys fueling the flames because 1 or 2 people threw their Wiimote through a flat screen (held their phone left handed while completely covering the antenna in a bad signal area).

My prediction: On Friday, they are going to announce that there are free bumpers available to all iPhone 4 customers. Total cost to Apple: about $5 a piece. Total sales lost - absolutely zero because everyone that actually owns the phone realizes it is the best phone they have ever had, and a free fix takes care of the only minor issue that it had.

<comment><USER28> "... a free fix takes care of the only _minor_ issue that it had." [emphasis mine]

Now if they could just fix the other _major_ issue with the proximity sensor.</comment></comment></comment></comment>


A small health tech startup beat Alphabet with a coronavirus screening tool - <AUTHOR> https://www.protocol.com/vital-coronavirus-checker-symptoms-website <comment><USER2> Sounds like this "startup" did the same thing 1000s of websites and apps have done... post some possible systems and risk factors.

Another corona article for someones ego</comment>


NoSQL East 2009 day 2: Pig/Twitter, Cascading, Neo4j, Redis, Sherpa/Yahoo  - <AUTHOR> http://journal.uggedal.com/nosql-east-2009---summary-of-day-2

<comment><USER2> There is some problem with the numbers for Redis:

"Can do 19,600 gets and 13,900 sets a second on a MacBook Pro"

In my macbook (not PRO) Redis performs like this:

        % ./redis-benchmark -q
        SET: 34705.88 requests per second
        GET: 31055.90 requests per second
        INCR: 28739.25 requests per second
        LPUSH: 35013.98 requests per second
        LPOP: 30496.95 requests per second
        ^C

But redis _sucks_ on Mac OS X compared to how it performs on Linux. The same macbook running Linux reaches almost 100k query/sec. An entry level server running Linux is in the 150k/sec zone.

Sorry but I spent some time in order to make Redis so fast, so to see numbers an order of magnitude less does not make me happy ;)

About the replication: Redis supports master-slave replication with very very fast first synchronization. The replication is non-blocking, this means that if you attach N slaves to the master it continues to reply to clients without troubles when synching with the slaves.

If the link between master and slaves goes down the two will resynchronize again automatically. It's possible to use a replica in order to enhance data durability.

Replication can be controlled at runtime. For instance if you want an instance to become a replica of another instance all you need to do is something like this:

        echo -e "slaveof 22.214.171.124 6379\r\n" | nc 184.108.40.206 6379

Final note about the snapshotting persistence mode, in Redis edge on git there is already support for append-only journal, that makes Redis an option even when data is very important.

<comment><USER3> The benchmark is a C program. Do any of the clients come close to matching the benchmark?

<comment><USER2> Yes, it's just about parallelization.

If you meter the performance, even of a C client, in a busy loop, you are really measuring the round time trip, because it's a request-reply protocol, and most clients block until the reply is not ready.

Even using a Ruby / Python / ... client, if you run N of this clients, you'll see that Redis can handle this number of queries every second.

<comment><USER3> I understand that. I was gently hinting that the conf. presenter probably was using a (single) client given his audience.

As an aside, from the end user's point of view (assuming the typical end user is a web 2.0 app), the _throughput_ isn't the only consideration. Even with N clients having 100k/s _throughput_ , request latency is likely going to be N* the 1/tps. ~ 0.1 ms is probably the sort of request latency the end user is going to be looking at, and not .03 ms (taking your mac numbers as baseline). Bump up the number of clients and that latency is gonna get higher, even while throughput gets better.

This has nothing to do with redis (which is great). Just something to keep in mind when looking at this sort of performance measures.

<comment><USER2> I agree with you that requests/second is not the only or more sensible parameter to meter performances, this is because redis-benchmark reports latency percentile too. I just suppressed the output in the example, but it looks like this:

        </comment></comment></comment></comment></comment><comment> SET </comment><comment>
        10008 requests completed in 0.39 seconds
        50 parallel clients
        3 bytes payload
        keep alive: 1

        1.03% <= 0 milliseconds
        38.83% <= 1 milliseconds
        73.12% <= 2 milliseconds
        95.34% <= 3 milliseconds
        97.93% <= 4 milliseconds
        99.50% <= 5 milliseconds
        99.75% <= 7 milliseconds
        99.84% <= 8 milliseconds
        99.93% <= 9 milliseconds
        99.94% <= 10 milliseconds
        100.00% <= 11 milliseconds
        25401.02 requests per second

As you can see under this load most clients are served in 4 milliseconds or less, including both the transmission of the request and the reception of the full reply.</comment>


Goldenballs: Not for Nothing Was Jacob Fugger Known as "Jacob the Rich" - <AUTHOR> http://www.economist.com/news/books-and-arts/21660074-not-nothing-was-jacob-fugger-known-jacob-rich-goldenballs

<comment><USER2> The influence and importance of the _Fuggers_ can still be seen in Augsburg and the surrounding area today:

\- endless houses and castles [0]

\- the _Fugger foundations_ [1]: existing continuously since the 16th century

\- the _Fuggerei_ , the oldest social housing complex of the world [2], financed by the _Fugger foundations_ : qualifying (catholic) people in need live there for less than a euro a year

[0] [https://de.wikipedia.org/wiki/Fugger_von_der_Lilie#Baudenkm....](https://de.wikipedia.org/wiki/Fugger_von_der_Lilie#Baudenkm.C3.A4ler_der_Fugger)

[1] [http://www.fugger.de/en/singleview/article/quick- guide-5/33....](http://www.fugger.de/en/singleview/article/quick- guide-5/33.html)

[2] [https://en.wikipedia.org/wiki/Fuggerei](https://en.wikipedia.org/wiki/Fuggerei)

</comment><comment><USER3> _' Fugger teamed up with another Habsburg client, for whom he had bought the archbishopric of Mainz, and the pair began to sell indulgences (a forgiveness of sins, which provided, for a fee, a short cut to heaven), splitting the proceeds with Pope Leo, who used the cash to build St Peter's Basilica. In 1517 Martin Luther was sufficiently outraged by this scheme that he wrote the "95 Theses" that damned Rome, sparking the Protestant Reformation.'_

</comment><comment><USER4> paywall

edit: workaround = load the URL in incognito-mode.

<comment><USER5> I don't see one.

<comment><USER6> "Subscribe now for full access or register to continue reading. You have reached your article limit"

<comment><USER5> OK, got it.

</comment></comment></comment></comment><comment><USER7> There's a richest person that dies every time after the last richest person died. The idea that he was the richest person in history sounds very euro- centric.

<comment><USER8> There are lists of same:

[https://en.wikipedia.org/wiki/List_of_wealthiest_historical_...](https://en.wikipedia.org/wiki/List_of_wealthiest_historical_figures)

Direct comparisons are, of course, difficult.</comment></comment>


Star Citizen developers intend to drop DirectX support and only support Vulkan - <AUTHOR> https://forums.robertsspaceindustries.com/discussion/comment/7581676/#Comment_7581676 <comment><USER2> _" Years ago we stated our intention to support DX12, but since the introduction of Vulkan which has the same feature set and performance advantages this seemed a much more logical rendering API to use as it doesn't force our users to upgrade to Windows 10 and opens the door for a single graphics API that could be used on all Windows 7, 8, 10 & Linux. As a result our current intention is to only support Vulkan and eventually drop support for DX11 as this shouldn't effect any of our backers. DX12 would only be considered if we found it gave us a specific and substantial advantage over Vulkan. The API's really aren't that different though, 95% of the work for these APIs is to change the paradigm of the rendering pipeline, which is the same for both APIs."_

This feels like a pretty handwavey statement. For one, all shaders would need to be converted from HLSL to GLSL, which could become quite a big task depending on the amount of shaders, and testing of all changes.

Secondly as I understand it the Vulkan API is much more low level and barebones than DirectX, meaning it'll be a lot of work to shore up the differences. I may be wrong here, but it seems to be like the developer is saying that a DirectX -> OpenGL change is no big deal, but swapping out your foundations _is_ a major big deal. The concepts may be the same but the APIs are still hugely different.

And why is this even a concern for a game started in 2011? It's mind boggling that they are making these kind of decisions 6 years into development, surely just finishing the damn gameplay should be the focus?

<comment><USER3> > For one, all shaders would need to be converted from HLSL to GLSL

GLSL is just one option to write shaders for Vulkan (the only inmportant thing is that SPIR-V code can be generated). I can even imagine quite well that one could write a compiler which generates SPIR-V code from HLSL shaders.

> Secondly as I understand it the Vulkan API is much more low level and > barebones than DirectX, meaning it'll be a lot of work to shore up the > differences.

DirectX 12 is similarly low level.

> I may be wrong here, but it seems to be like the developer is saying that a > DirectX -> OpenGL change is no big deal

DirectX 11.x is similar in "level" to OpenGL 4.x (though the difficulties are a little different - I don't want to go into details here). Similarly DirectX 12 and Vulkan are similar in level (much more low level than their predecessors). No wonder since both Vulkan and DirectX 12 are "strongly inspired" by Mantle. Additionally Vulkan was intended as the succesor of OpenGL and DirectX 12 as the succesor of DirectX 11.x.

> surely just finishing the damn gameplay should be the focus?

That is what _you_ wish. :-)

<comment><USER4> > I can even imagine quite well that one could write a compiler which > generates SPIR-V code from HLSL shaders.

Khronos are working on building this into the official SPIR-V compiler: [https://github.com/KhronosGroup/glslang/issues/362](https://github.com/KhronosGroup/glslang/issues/362)

</comment></comment></comment><comment><USER5> >use as it doesn't force our users to upgrade to Windows 10 and opens the door for a single graphics API that could be used on all Windows 7, 8, 10 & Linux

Finally they're starting to get it.

<comment><USER6> Considering that the mGPU and VR support in the latest release of Vulkan requires Windows 10 and WDDM I don't think even Kronos gets it anymore ;)

<comment><USER7> I don't use windows. What's wrong with windows 10?

<comment><USER8> \- They are presenting ad 'experiences' on the Start menu, lock-screen, notification area, taskbar and now the File Manager, too. This is happening even on Enterprise.

\- Windows 10 will automatically install games from the Windows Store which are not wanted such as Candy Crush

\- Extensive and opaque 'telemetry' being sent back to MS which cannot be completely turned off

\- Lack of control over windows updates

These are my own personal reasons why I will never be installing such an anti- consumer OS.

<comment><USER9> \- they are showing "suggested apps" in the start menu, which can be turned off. The others are OneDrive and Edge suggestions and can also be turned off.

\- those apps are installed at the time of installation and can be removed. If so, they are not reinstalled ever again.

\- telemetry. Scary. Every application you install does this.

\- MS found (via telemetry) that users don't like installing updates, and thus left themselves open to many vulnerabilities that antivirus systems don't even look for. So, MS has chosen to force users into a more secure paradigm.

These are my personal responses why I don't mind windows 10 at all, and don't feel it to be anti-consumer at all.

<comment><USER10> \- they are showing "suggested apps" in the start menu, which can be turned off. The others are OneDrive and Edge suggestions and can also be turned off.

How about they ask users first if it is okay to do this? That is a better approach, opt in.

\- those apps are installed at the time of installation and can be removed. If so, they are not reinstalled ever again.

That wasn't true for the first few years and even Microsoft admitted it in one of the release notes that they weren't retaining option to never reinstall the apps. AU update reinstalled these apps for me.

\- telemetry. Scary. Every application you install does this.

Again, they should be opt-in, not forced and found out later that they were collecting more data than they should.

\- MS found (via telemetry) that users don't like installing updates, and thus left themselves open to many vulnerabilities that antivirus systems don't even look for. So, MS has chosen to force users into a more secure paradigm.

If they needed telemetry to confirm what everyone has known for decades, they have a bigger problem.

<comment><USER9> >If they needed telemetry to confirm what everyone has known for decades, they have a bigger problem.

If there is any single thing that I've learned during my time on Earth, it is that people, collectively, "know" a lot of things that aren't actually true. Everyone knows that pouring sugar in a car gas tank will kill the carb or fuel injectors. (This is false.) Everyone knows that you taste sweet with a different part of the tongue as sour. (This is False.) Everyone knows that waking a sleepwalker is dangerous. (It isn't.) Everyone knows that Napoleon was short. (He wasn't.) ad infinitum... I will not fault MS for taking the time to actually prove a suspicion true or false, to themselves or to anyone else. This happens far too rarely, and a lot of people believe a lot of things that aren't true as a result.

The people MS are aiming for with the ads are not the type of people who would ever opt-in to these things. Microsoft know (again, via telemetry it is proven) that clueful users will either know how to opt-out of thing they do not like, or will know how to find out how to opt-out. An opt-in preference would be preferred to myself and probably a large portion of users, _of course_ , and would probably result in approximately 0% participation, which is very likely not what Microsoft are aiming for.

With the Creator's Update, pre-installed applications, once uninstalled, will not be reinstalled when the OS is upgraded. I, personally can attest to this one. I've been installing the fast-ring builds since the Anniversary Update, and I uninstalled Candy Crush Saga exactly once. It has not returned.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> Star Citizen is one of the only Triple-A games in development that is PC first. Good that they value their Win7, Mac and Linux gamers.

Both DirectX 12 (which has nothing in common with DirectX 11) and Vulcan originate from AMD Mantel and the work of the Frostbite devs. Vulcan is the better choice nowadays, and several Triple-A games incl Doom 2016 support Vulcan.

There is no reason to use Win10 as a gamer, all games (beside the arcardy FU3) run on Win7, even the older one that stopped working with the infamous adware & spyware that Win10 is - as of today Win10 has ads in Windows Explorer, see [https://news.ycombinator.com/item?id=13903519](https://news.ycombinator.com/item?id=13903519)

<comment><USER12> The great irony here is that Doom 2016 has no official Linux support and Windows was necessary to play it. It only became usable under WINE within the past couple of months.

<comment><USER13> This was mostly an issue coming from Denuvo, which doesn't offer a way to generate linux executables. Now that Denuvo has been stripped, it runs on Linux, and pretty damn well with the Vulkan backend.

</comment></comment></comment><comment><USER14> Its almost been 6 years and they have raised 140+ million. I would be kind of mad if I had contributed and the haven't released a full game yet and they are changing something else.

<comment><USER15> I don't get why people still keep giving them money for ships, why they are ok with the new shifted focus (the game they are going to deliver isn't what was promised), nor why people can't bring themselves to even acknowledge these problems.

These aren't just Star Citizen problems, this is the entire industry. Somehow by labeling it an art they're allowed to get away with anything.

There are very few successfully developed games and this new craze of "Early Access" is just ruinining all QC and somehow making any publisher/programmer imune to criticism via the "It's only the alpha! You need to expect it to be buggy! It's not the developers fault!"

<comment><USER16> The real problem is seeing "inside the box". Most games are buggy and unfun for at least 90% of development time, and change direction several times as certainly things are found to work, or not work. The problem now is people are, reasonably, expecting what's in the original design document, and then getting annoyed when they get something else.

Also, as you say, having people's money already removes the need to finish -- and that push to polish and finish so you can release and get some money in my experience is what makes games good.

</comment></comment></comment><comment><USER17> I personally think a more likely explanation of this move is that they are nowhere near completion and need a good 'technical excuse' for pushing deadlines way into the future.

Then everyone begins debating the technical issues rather than the timetabling and funding issues.

<comment><USER18> There is seriously something wrong with this community whenever a Star Citizen article comes up. Did you even click the link at all before coming up with your conspiracy theory?

This is a reply to a question that mentions, in passing, that for simplicity sake they are DROPPING ONE OF THE TWO targets they are CURRENTLY supporting. This is not "we need excuses to push deadlines", this is "we're cutting something to speed up development", with explanations accompanying it.

And that aside, HN of all communities should appreciate the level of transparency and technical insight CIG gives to their backers. Like the one in the post here. That you did not click because you were too busy coming up with "technical excuses".

<comment><USER17> Hello, thank you for your comment.

I've followed the Vulkan/DX12 issue on and off over the last year for SC as I am an early backer.

Given that they only first approached the question of Vulkan in 2016, and as recently as a few months ago were still in blackout as to the level of support: e.g.

[https://forums.robertsspaceindustries.com/discussion/comment...](https://forums.robertsspaceindustries.com/discussion/comment/6522297/#Comment_6522297)

then

[https://www.reddit.com/r/starcitizen/comments/53qsy5/any_new...](https://www.reddit.com/r/starcitizen/comments/53qsy5/any_news_on_dx12vulcan_support/)

I am not persuaded that this is as simple a matter as dropping one of two equally well-developed branches.

Generally speaking, moving from a mature high-level API (especially one which the underlying game engine/architecture is heavily tied into) to a less mature low-level API tends to mean refactoring work and extra implementation work, as well as a whole new bunch of bugs and testing.

I would agree that pursuing only Vulkan or only DirectX is probably smarter than pursuing both simultaneously in terms of a faster delivery. I also think in terms of cross-platform development and performance it will be better to use Vulkan (for any game).

However, the introduction of Vulkan is a relatively recent event in the history of SC development (see above), saying 'we're only going to support it now' might actually be saying 'a rewrite (or substantial refactoring) of the game started last year, which we are now owning up to'.

<comment><USER18> I'll give you that the two branches may not necessarily be in the same state but I can guarantee you that, if they previously had in mind supporting both and are now down to only support one, it's a great relief in development efforts.

As to whether it's a _good_ decision, it's a different and very hard to tell matter. I find it a little absurd though how much input people have into this. These decisions matter only in context; you need to be familiar with a lot of the technical background on the game itself and its ongoing development to really be informed on whether it is.

For context: I work with Blizzard games a ton. I'm extremely familiar with Blizzard, their teams, the work that goes on there; nature of my job. I also frequent the subreddits where armchair programmers and game designers think they can outsmart the devs by throwing random buzzwords in the comments. Everybody thinks they know better, thinks they know how to manage a community of millions to tens of millions, thinks they know how to ship AAA games, etc.

I see a very similar pattern on HN with CIG because CIG is (far) more transparent than your average studio. And I just wonder (this is a general statement, not only about your comment) why people adopt this "I know better" attitude when they clearly _don 't_ have al the variables and know it themselves.

I've seen this in every single thread about SC. People here see a kickstarter project taking a long time and start yelling their own startups' platitudes like "release early release often" that aren't applicable to game dev the same way. Every time I expect better and every time I'm disappointed

</rant>

<comment><USER17> Can you explain to me the difference in practice between

'a rewrite of an existing code base from language A to language B'

versus

'Saying you will support language B as well, dropping language A after a while completely, then announcing you are going to try to complete it in language B'

Because I am not sure I perceive a large semantic difference.

I happen to agree with an earlier post suggesting that if you want to run off with the money, then this kind of thing is a pretty good way of creating noise and cover instead of results.

Also: can you please stop shitting on the HN community with your posts and keep to the topic?

I get that you want to rant for some reason, but it would be better for us all if you did it in notepad or emacs rather than here.

<comment><USER18> Really, I'm the one shitting on people?

You're merely claiming hundreds of game developers, part of the most transparent game studio of all time, are involved in this grand conspiracy.

What does "running off with the money" even mean? Create artificial work for yourself and your company all the while pissing people off on purpose? Oh yeah that's a much better plan than just making a game.

Reminds me of people claiming the lunar landing was faked because they have it in their head that faking the thing and maintaining the charade over decades is somehow cheaper.

Regarding your question, we're talking about shading languages, most of which are autogenerated by the sources. This is more akin to dropping support for a platform than "rewriting everything".

<comment><USER17> This forum has rules about how to talk to other people in the forum. I feel you are ignoring them in terms of how you talk about me and other HN users.

Have you read the forum guidelines?

"You're merely claiming hundreds of game developers, part of the most transparent game studio of all time, are involved in this grand conspiracy."

I claimed no such thing and I do not enjoy your hyperbole.

In my experience when announcements are made and timetables shifted, it comes from higher up.

As for 'the most transparent game studio of all time'. Really? I think perhaps you should have followed the Numenera/Torment or Elite crowdfunded projects as a point of reference on that, you would likely have a different opinion.

"What does "running off with the money" even mean?"

I can only presume you have never funded an unsuccessful kickstarter project. I've funded several. They all followed an identical pattern of projects scope / platform changes and dozens of premature 'about to ship, just 1 more month' optimistic updates from CEOs.

Generally 'running off with the money' means taking the money and not delivering a product. In the case of kickstarter, usually using a long series of excuses along the way. It does not literally need to mean catching a flight to some far-off country with the money. Often the money is simply spent while people post misleading updates about the progress of the project. Then the final update: "Sorry, we thought we could deliver. But we can't".

I honestly can't see a difference between what's happening with this projects and the other projects that failed, nor any difference in the communication style, content and frequency. Winning projects don't usually look like this. Numenera didn't. Elite didn't.

"Reminds me of people claiming the lunar landing was faked because they have it in their head that faking the thing and maintaining the charade over decades is somehow cheaper."

Again, you're just being rude and hyperbolic. If you think a kickstarter project involving repeated delays over a period of years - which turn out to be CEO deception about project viability - is 'questioning the moon landing', then you are perhaps naive about crowd funded projects. I am not insulting you by saying this. I simply mean it literally: from what you're saying, it seems you don't know what crowdfunded projects are like. I do. I've wasted plenty of money on them.

[http://gizmodo.com/7-crowdfunding-fails-that-will-make- you-t...](http://gizmodo.com/7-crowdfunding-fails-that-will-make-you-think- twice-abo-1639106912)

[http://gizmodo.com/the-9-most-disgraceful-crowdfunding- failu...](http://gizmodo.com/the-9-most-disgraceful-crowdfunding-failures- of-2015-1747957776)

I hope star citizen does not turn out to be pie in the sky, partly because the world needs good space sims and partly because I put my own money on the line.

However, projects that suddenly announce changes of this magnitude when they ought to have delivered something years ago, often turn out to have other underlying problems that prevent their ultimate success. Star Citizen has undergone multiple changes of project scope, changes of technology platform, never-ending delays, and it is hard to believe that this is the result of the kind of management that wants to deliver a good product on time and is capable of doing it.

I also funded Elite Dangerous as a kickstarter backer, and I consider it to be a good example of good project management. I have had the pleasure of playing it for years.

<comment><USER18> Yes, CIG is absolutely the most transparent game studio of all time. I say this with over 13 years experience in and around the games industry. They're creating a plethora of video and text content on their process, on the development of the game, the design, the experiences, failures and successes, etc. They share time tables. They share their deadlines. They often miss them in fact, and so do I at my company. It doesn't mean they're running off with the money.

As for Elite, that is an excellent example of a project that failed to deliver what it promised. I love Elite, by the way, but the only reason you're touting it here is because it's already out, whereas SC is not. I understand that, you're a gamer, you want something you can play now, not something you can play later.

Here's the thing: Star Citizen and CIG are both plagued with issues. Cultish behaviour from their communities, overpromising tendencies, micromanagement, etc. It's not a flawless game or studio. But game development is _hard_ and game developers are some of the most passionate about their job, of all professions on earth. So it really _pisses me off_ when people start claiming that all they want to do is "run with the money".

It's possible to fail. You're on a forum where people build their own companies from scratch. Most of these people fail. If after dedicating years of your life on your vision while being questioned at every corner you end up failing, that's not "running with the money", that's failing. It's hard, it sucks, it destroys you and this happens to people on here every single day. It's not some kind of goal that they're all looking forward; "oh man I can't wait until we don't have to keep up this charade anymore of pretending to work on the game every day, so that we can enjoy all the jaccuzzis we've been buying!".

You want points of reference, I invite you to look at game studios that _actually_ "take the money and run". Start with Zynga, see how deep that rabbit hole goes.

<comment><USER17> > Yes, CIG is absolutely the most transparent game studio of all time. I say > this with over 13 years experience in and around the games industry.

If that's the best you've seen, I would recommend you to Riot Games excellent series of blog articles on their game design (principles, practice, front end, back end, player management etc). Or... Elite's dev blog and forums, which were excellent?

> As for Elite, that is an excellent example of a project that failed to > deliver what it promised.

Uhhh.. no? I think it delivered everything I hoped for, and more? As a player of the original I've been delighted by the scope of the game. Feel welcome to disagree of course, but let's be clear that we're talking opinions not facts.

One thing is for sure: they delivered a game that has given me a lot of fun for a long time.

SC has delivered posts as you say, e.g. about deadlines - that they've missed - it's really much less useful for me in terms of my personal enjoyment.

> But game development is hard

Yes, but looking at peers with less money and grand goals, those peers actually achieved their goals, let's celebrate that maybe a bit more instead?

> So it really pisses me off ...

That's not actually an OK excuse for how you've been writing on here.

> It's possible to fail. You're on a forum where people build their own > companies from scratch. Most of these people fail.

Sure, but it's not the 1970s. We should not be celebrating game companies that are in the process of possibly failing, holding them up as gems of the industry (as you appear to be doing, from my perspective), especially when many of their choices lead directly to missed deadlines and the absence of a game for me to play.

> You want points of reference, I invite you to look at game studios that > actually "take the money and run". Start with Zynga, see how deep that > rabbit hole goes.

Zynga delivered, over and over and over. What they delivered wasn't a game, arguably, more a skinner box, but you'd have a pretty hard time convincing me they entertained fewer people than SC has.

If I can sum up your arguments:

\- Elite: a project that failed to deliver what they promised \- Zynga: a game studio that took the money and run

I simply can't see that you would get widespread agreement with those views. They are both profitable companies with hundreds of thousands more happy users of their products than SC has. Zynga in particular didn't even charge for many of their products, so it's a bit hard to claim they 'took the money and ran'.

Anyway, why don't we leave our discussion here. You can post again if you like but I won't respond to it, I don't believe either of us is presenting information that will persuade the other person of their view.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> Why does this vaporware still get news?

This game is never going to be completed. They've already made their money and have taken on a job that's way more more ambitious then the developers or any of their backers realize.

<comment><USER20> I don't what the problem is. They are extremely transparent with development and internal timelines. No one expects the game to be finished anytime soon, but there is continuous progress.

(I'm not backer, just interested in the game)

<comment><USER21> Yeah, as many backers exist that apparently delude themselves into thinking the game will be done soon, there are just as many that call it vaporware when there is clear progress every single week. They made presale money, sure, but it seems like the latter just can't comprehend that, just as with open source projects, the developers are building the game because they want to build it, not just because it will make money.

<comment><USER22> Which is the point, "the developers are building the game because they want to build it" \- they don't want to finish.

<comment><USER19> Also just because they want to build it doesn't mean they will ever finish. Nor does it mean that they're able to build what they've set out to build.

Anyone remember the DayZ standalone? People said the same thing about rocket. That he won't abandon his game. He cashed out years ago and the game is still a buggy piece of shit. And that's a far less ambitious game than Star Citizen.

Just because they "want" to build it, doesn't mean that they can or that they won't lose interest in a few years when the interesting bits are done and its just a long road of grinding to actually get something shippable.

</comment></comment></comment></comment></comment><comment><USER23> Cool. 2+ developer years of development time fore refactoring. At least I did not back this game so I have no expectations.

<comment><USER24> As I understand their post they are currently developing for both, so dropping one shouldn't be _that_ bad.

</comment></comment><comment><USER25> Considering that Vulkan is faster and should be well supported on all platforms by the time this game finally comes out, i think it's a good decision. I guess only possible since they don't plan console support.

<comment><USER26> It's faster than OpenGL or older DirectX versions, but DX12 was pretty much on the same level of abstraction as far as I understood it.

<comment><USER27> Yes, DX12 is very similar to Vulkan but the major difference is Vulkan is present on most gaming platforms except iOS, so it makes sense if you have to choose one of those two you will choose Vulkan.

<comment><USER28> Isn't Vulkan AMD only though?

<comment><USER29> Vulkan is based on Mantle from AMD, but the code was donated to Khronos. Both Nvidia and Intel have Vulkan drivers.

<comment><USER30> Does Intel have a vk driver?

AFAIK, they only have a Linux one, but only for Broadwell and newer. Do you know something about the Windows driver?

</comment></comment></comment></comment></comment></comment><comment><USER31> The duke nukem forever of kickstarter games.

</comment><comment><USER32> I'm sure people will appreciate it in 2100 when the game is released.

<comment><USER33> Is the game going to be released?

<comment><USER34> Duke Nukem got released, and if that made it anything can!

FWIW, Duke also swapped graphics and engines several times during development.

<comment><USER3> > Duke Nukem got released

Created by a completely independent studio, not the original makers.

<comment><USER34> And this same thing could never happen to Star Citizen?

<comment><USER3> Since there is no publisher sitting in the tail, it is at least IMHO far more unlikely.

<comment><USER35> CIG could run out of money and be forced to sell

</comment></comment></comment></comment></comment></comment></comment><comment><USER36> I hope more game developers do the same.

And I hope if this time Microsoft comes up with a FUD campaign against Vulkan (like what happened with OpenGL) people can just uninstall Windows and try another OS.

</comment><comment><USER37> Is this gonna push release back another four years?</comment>


Why Larger Text Leading Helps Users Read Easier - <AUTHOR> http://uxmovement.com/design-articles/why-larger-text-leading-helps-users-read-easier

<comment><USER2> This is a good quick reminder, but its title is misleading. It doesn't explain why larger leading helps people read. It just says that it does.

<comment><AUTHOR> Thanks for your feedback. Titled has been improved.</comment></comment>


The 3 essentials to start up - <AUTHOR> http://manylogue.com/the-3-essentials-to-start-up/

<comment><USER2> Truism is the right word for this? English is not my first language so I'm not sure.

The word in spanish is 'perogrullada'.

</comment><comment><USER3> Hmmm. Deja Vu.

Was this article copy/pasted from somewhere?</comment>


Ask HN: Salary Increases Over Time - <AUTHOR>

I'm curious about how pay for particular positions at particular companies trend over time. It seems a little tricky to find the data since glassdoor doesn't seem to offer additional breakdown by year. Other sites don't seem to have sufficient datapoints. What has your experience been with annual raises? And do you find salary-reporting sites to be accurate? Or possibly filled with outdated data? <comment><USER3> Experience to date has been that without promotion, pay-rises within a company have always trailed inflation.

So either you get promoted, and at that point you've negotiated a substantial raise (to offset the real decline in earnings and to protect your actual earnings in the years after the payrise)...

Or...

You go get a job elsewhere.

It's a sad fact that the majority of real pay rises that I've ever seen, and that others I've spoken to have seen, have all come as a result of changing employer.

This is a UK perspective btw.

<comment><USER4> The phrasing bandied about where I currently work is:

"You are doing the same job as last year, so your pay should be the same adjusted for inflation. If you want more money, you need to be taking on more responsibility, growing your role."

<comment><USER5> You are doing the same job as last year, _except with a whole nother year's worth of experience_.

<comment><USER6> very off topic, but i've always wondered whether 'nother' was an acceptable word to use.

<comment><USER7> no native english speaker here, but i guess "a whole 'nother" would be correct. but let people be lazy when typing online. actually i guess you'd also need to switch the words to be gramatically correct: "another whole year"

<comment><USER8> native english speaker here, and I grant that english is flexible enough that such things are largely a matter of opinion, but "nother" bugs me. I would write 'other with the apostrophe used to indicate the mixing of "a whole other" and "another" into 'other. I would pronounce it "other" if I was thinking, but possibly "nother" if I was being sloppy.

<comment><USER9> It works in speech, but makes no sense in writing. 'nother is more confusing and awkward to write that another.

<comment><USER10> I cringe when I hear people say this. It works in speech to the extent that "irregardless" or "I could care less" are acceptable.

<comment><USER9> > I cringe when I hear people say this. It works in speech to the extent that > "irregardless" or "I could care less" are acceptable.

I'm not sure where you're from, but in Yorkshire you'd end up saying such things yourself before long. What matters is comprehension, and whilst writing to an audience means you need to ensure clarity, the same concerns are less applicable to chatting to a lifelong friend.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Varies wildly from company to company. Some will keep an eye on the market, and make sure they are paying you market rate. If you're great, they'll make sure you're paid more than market so you don't have any reason to even talk.

However, many companies will only open their checkbooks when you're hired, or when you have an offer they need to counter. These are the companies that suck to work for because everyone is talking and interviewing to get their next raise. How can you trust your employees?

<comment><USER12> Yep, happened exactly this way at my last job. I was ridiculously underpaid, and I was attempting to negotiate about a month before pay reviews and was told to wait. My intentions were clear though.

The mandate came down - 3% for everyone more or less. I argued, and was politely shot down. Three weeks later I had a new job offer at a competitor I really wanted to work for. My current employer asked me how much it'd take to stay - "no dollar amount would keep me". I'm actually interested now how much they were willing to offer as a counter though.

New company has been really great with annual rises in the vicinity of about $10k.

<comment><USER13> Paying an employee enough to keep him from leaving, before he _declares_ that he's leaving, could be seen as a form of early optimization.

We don't like early optimization, for good reasons. "They" probably don't like it either, for similar reasons. No reason to fix the employee machine if it isn't making noise.

<comment><USER14> The point was that he did make noise (albeit softly), and his noise went unheard. If you express your honest concerns, and those concerns fall on deaf ears, you'll know that your input won't matter in the future either.

Machine analogy doesn't work here, because machines don't understand human psychology.

</comment></comment></comment></comment><comment><USER15> My policy is that every year I aim for a substantial pay rise. There is no set percentage that I aim for, I basically just come up with a number that I want, and start negotiating.

The day that the company claims there is no more room in the budget, and I can't see any realistic chance of progression, is the day I start looking for a new job.

Generally speaking, the easiest way to secure a decent pay-rise is to change companies. However, most companies have some kind of appraisal system in place - don't be afraid to ask for a pay-rise. Most companies expect it, and are prepared to negotiate somewhat.

In the past year, I increased my salary by 50%. Know what you're worth, work out the average for your position and skillset, and demand it.

Working for a lower salary than the industry standard is not only bad for you, it's bad for the industry as a whole.

<comment><USER16> "Working for a lower salary than the industry standard is not only bad for you, it's bad for the industry as a whole."

There is a reason not everyone gets paid the same. Two software engineers with 7 years experience in the same technologies but one has taken on leadership roles in big projects and the other has only done small solo projects. The first person should be above the industry standard, but the second person should be below the industry standard.

<comment><USER15> Of course, that's where the negotiation comes in to play from both the employer and the employee.

</comment></comment></comment><comment><USER17> This will largely depend on the company - its size, its domain, and it will also depend on one's position within the company.

For example, the same senior C/C++/Java dev can have recurrent annual 10% raises in a larger enterprise or government outlet. He may also get irregular 20-30% performance based raises that sometimes double as retainers. While more likely to happen in a small companies, I saw it happen in larger (500+) companies too. Alternatively, he may get a year-end or a project-end bonus. finally, he can also get no increase, which is the kind of bonus favoured by the game development sweatshops.

No wonder there's no unified stats on this. How can there be.

<comment><USER18> No only the position. Having worked in two multi-nationals, they generally have a band or grade system. For the given band there's a min, max and midpoint. But, this is broken down by country, and in the USA often broken down by Bay Area, NYC, rest of country.

And like the other comments, at these places annual bonuses, project bonuses, and spot bonuses are usually budgeted for. If you don't hear about them, and you're in a big co. ask your manager, and if they don't know then you've got the wrong manager!

</comment></comment><comment><USER19> In order to credibly get a raise and get paid what you're worth, you need a BATNA - [http://en.wikipedia.org/wiki/Best_alternative_to_a_negotiate...](http://en.wikipedia.org/wiki/Best_alternative_to_a_negotiated_agreement)

Otherwise your employer has no reason to give you a raise. If they don't think you're a risk of taking another job why would they voluntarily give you a large raise and cut into their margins?

</comment><comment><USER20> From what I've seen with software engineering positions, you can expect roughly a 10-25% year over year salary increase. I also can't stress enough how much negotiating a higher starting salary can have an impact over your long term prospects. It's very important to know what you're worth on the market so that you can make sure that you're compensated fairly for the amount of experience AND potential that you have. Recruiting engineers usually costs about 10-20k, so companies more likely than not will give you at least a 10% increase to keep you from leaving, and more based on how much you were able to deliver and how well you can negotiate.

<comment><USER21> Average of your 10-25% is 17.5%. 17.5% raise per year over 20 years is a salary of 25X in 20 years.

I know someone who started at $10k in 1975 and was at $80k in 1996.

Do you expect an entry level sw engineer at $70k to be making as salary of $1.8M in 2032?

I suspect Math doesn't mean what you think it means.

<comment><USER20> That's as ridiculous a statement as expecting someone to make $5+ million after 30 years. I didn't say it will go up forever. This growth won't keep going for more that 5-10 years, after which it will go down to the 5% range. I have software engineer friends who started 8 years ago at 60k and now make around 180-200k as principal engineers, roughly a 15% increase YoY, after which salary stays stagnant unless if you get an MBA and move into management roles.

</comment></comment></comment><comment><USER22> I'll give you some real world numbers:

* 2006 entered the job market as a new CS grad in Boston area. 39k salary.

* 2007 was given a 7% raise

* 2008 I asked for and got a raise to 50k (roughly 19% increase)

* 2009 I quit and travelled

* 2010 Moved to DC and found a job at 65k (roughly 30% increase)

* 2011 I asked for and got a raise to 85k (roughly 30% increase)

* 2012-first half I switched jobs in DC to 100k (roughly 17% increase)

* 2012-second half I left that job to travel and start my own thing

* 2013 Hopefully I won't be talking about salaries.

Two things:

* I definitely dug a hole for myself a few times, but I can say every job was a great place to work and I was surrounded by people I learned from every day.

* I never negotiated. Anytime I asked for a raise I was honest with them and I told them up front I wasn't negotiating. I gave them a number and told them that's what it'd take to make me happy. Both times they came back with a counter offer and both times I repeated I wasn't negotiating and thanked them for taking the time to see what they could do. In both cases I ended up getting what I asked for.

<comment><USER23> _I never negotiated. Anytime I asked for a raise I was honest with them and I told them up front I wasn't negotiating._

Who says negotiation is dishonest?

<comment><USER22> Not what I was implying at all.

I was honest in that I told them I was happy with the job and my work but not happy with my salary. I just tried to be as direct as possible.

</comment></comment></comment><comment><USER24> I've never worked at a company that had raises that kept up with the market. I've been a software developer since 1985.

<comment><USER18> Agreed. If you can under pay by an amount that is less than the perceived pain of looking elsewhere, that's sane if you have a short term view.

Other option you'll see in big corps is to use old technologies only. This gives them an excuse to underpay, and makes it harder for their devs to leave to a fair market salary role!

<comment><USER25> I work in the IT department of a major European investment bank. I can assure you that they're willing to pay high salaries to hire experts in said old technologies.

Mainframes are still in use, COBOL devs are in very high demand and finding experts in technologies as young as CORBA is becoming more and more difficult.

Never understimate the cash power of big financial institutions with old legacy systems.

</comment></comment></comment><comment><USER26> It's my experience that getting a pay rise in the same job is rather difficult in small/medium sized companies. The only way I have so far accomplished it is to move. Opinions tend to be quite viscous, it takes a lot of energy applied over a long period of time to change a view point. First impressions count. Just like your parents will tend to always see you as a child, your boss will tend to see you as the person you were when you joined. The dynamics of this situation are so stable over time that it can push common sense to breaking point. I was recently underpaid by £10,000 according to the market rate, yet could not negotiate even an inflation matching rise in pay. Like many things this is a battle between competing forces, your desire for enough money to make your life comfortable, the companies drive for more profit, a person's desire to avoid having to think, a person's drive for power and respect, etc. If you find yourself playing a game you cannot win, change the game and move on.

<comment><USER27> Very similar for me. I was doing a job I could easily have got £40k for, for £13.5k (I incredibly stupidly applied labelling myself as 'junior' because I only had 4 years experience back then). I never got a single pay rise, not even for inflation. Eventually I wised up and moved on. Up until I went freelance it was the _only_ way I ever got an increase.

</comment></comment><comment><USER28> I'm in a fun (and unique) situation. I work in and am paid from the UK, but am on a US Salary. I get a performance based raise on my US salary, between something like 2.5% and 5%. The fun part is that at the beginning of the year, they also set the exchange rate! It lasts for a whole year, so it can have good or bad consequences. The gods favored me last year, but who knows what the beancounters will come up this year. I could get a 5% raise but a -7% hit on the exchange. Or I could get a 3% raise and a +6.5% boost on the exchange. Oh the gloriousness of being an expat!

<comment><USER29> I'm curious - where do you pay tax? Are there not funny rules about overseas earnings?

Or are you "based" in the Cayman Isles ;-p

<comment><USER28> I pay UK, and if I go over the limit I pay US on extras.

</comment></comment></comment><comment><USER30> The thing that Ive found is that once you get into the upper-tier range (I define this as 125-150k and on average seems to include people with 5 to 10 years experience) it gets harder than before.

My first 5 years on average I had great raises - 15-20% on average (all mostly from job changes). Now it seems a little bit harder - I most likely can go out and convince someone to pay me 5 or 10k more but I feel my head starting to skim that glass ceiling. There are things I could do to change - I could go find a job doing financial transactions or blindly go work for the highest bidder with no care work conditions and other things, etc.

The point being is that developer salaries in the first part of the career can go up relatively fast but in my opinion top out relatively quickly (not such a bad thing necessarily). I think from there you need to go out on your own if you want to really make more.

</comment><comment><USER31> The best advice I can give is - try to estimate how much you are worth to a company. It can be fairly complicated, but understanding what you bring to the table can not only give you peace of mind but can also increase your salary.

It's your career. Own it. Let your employer know you own it. Any good employer will support you.

<comment><USER32> "It's your career. Own it"

This. I am amazed to see how many people don't understand the importance or relevance of this statement.

</comment></comment><comment><USER33> IMHO the big breaks (40+%) happen at major transition points: Promotion, post- grad-degree & new job. Everything should be aimed at those big 3 for long term compensation increases.

It's very hard to generalize on specifics. If you're freelancing, contracting or consulting, it's largely a function of how much your billing rate increases. If you're in software it's more a function of how the firm is doing, and how much credit you get for it. (If it's a weak link to how you get the credit, it's hard to point to)

One other note - there tend to be caps at levels within firms, so you can catch up if you're underpaid, but it's hard to break above without one of the big discontinuous jumps I mentioned above.

ok - one last note... You get paid best if you succeed in "line" jobs where you are contributing directly to money coming in, rather than "staff" jobs. This means that good Sales people always do well, and they'll get better comped than someone purchasing advertising from outside vendors. Likewise, a developer on a core product with get paid better than someone with the same degree and experience working in internal IT.

Salary reporting sites frequently get their data from H1-B applications, so the #s are reliable, but you have to be careful about timing. Someone working in banking technology in 2007 will get paid much more than the same job today.

</comment><comment><USER14> I don't really like switching jobs often, and I'm very happy with my current position in the Boston area but here are my hard numbers: Generalist Programmer out of College, fell into C# as first position.

Age 25: Paid Internship at 45k/year

4 Months Later: Brought on at 55k/year

6 Months Later: Asked for raise, bumped up to 60k/year

6 Months Later: New position, (Owner of 5 employee company was dying of cancer), bumped up to 70k/year + 3% Bonus/extra week vacation

1 Year Later: Merit based raise, bumped to 73k/year (asked for promotion and mentioned possible departure)

3 Months Later: Promotion, bumped to 78k/year (4% bonus on new salary)

This isn't the norm, I started at a much lower starting rate than I should have because even though I was qualified, I didn't have any personal projects to show off my skills and just needed to get my foot in the door.

In the end my point is that Salary increases should not (and generally aren't) based on a % of your current salary, but on what you've shown your true worth to be. Once you hit that true worth, it's adjusted for inflation and commitment.

</comment><comment><USER29> One of the best things you can do is ask your colleagues and your peers about their salary. That's the best way you can find out whether your pay is in line with "the industry".

Some companies have specific rules against disclosing your salary - try not to work for those people :-)

It may also be worth asking for an equal pay audit[0] - are you being discriminated against because of your sex, race, etc?

Finally, don't just look at salary. Look at the total package - <USER2> provision, holidays, bonus schemes, company car, discount schemes etc.

[0] [http://www.equalityhumanrights.com/advice-and- guidance//tool...](http://www.equalityhumanrights.com/advice-and- guidance//tools-equal-pay/equal-pay-audit-toolkit/carrying-out-an-equal-pay- audit/)

<comment><USER34> In the US, your employer can forbid you from revealing your pay _to outsiders_ , but the National Labor Relations Act guarantees that employees have the right to discuss their pay _with one another_. (I believe this falls under the heading "you have the right to discuss with your co-workers whether or not your job sucks so much that you should try to organize a union.")

</comment></comment><comment><USER35> As many others have said, the best way to get a pay rise is to get a new job. This becomes especially true if you work for BigCorp (or at least, big enough to have internal policies on pay rises).

I used to work with an embedded engineer who got a pay rise of 40% by quitting and getting another (very similar) job. Her manager knew that he needed to pay her a lot more but global company policy tied his hands and limited what pay rises he could hand out. I think he watched this happen over and over and over again.

</comment><comment><USER23> You asked for numbers. I probably shouldn't do this under my real name but... who gives a fuck.

US, 29 years old, 6.5 years in the industry. Salary growth has been about 12-14% per year, and I've made a lot of career mistakes, hence fairly average results. I'd probably have done 18-20% if I had (a) not made those mistakes, while (b) switching employers strategically. Most of the growth, as others have noted, occurs when you switch.

Obviously you can't continue getting 20% improvements every year for 40 years, but if you work hard, you should be able to get 10-15% per year for a while, and then you get to a point where it's easier and more fruitful to push for more time and autonomy than salary increases.

What are called "performance" bonuses actually have a lot to do with macroeconomic conditions. One year, at one job, I got a 60% bonus. I was good, but nowhere near the strongest on the team. Equity allotments have a lot to do with what the board will allow. One of the reasons Facebook has been able to get so many good engineers is that the board doesn't set caps on engineer stock allotments, which is the case for many startups. Consequently, Facebook was free to offer 6- and 7-figure options packages (at valuation; _not_ packages that eventually became worth that much) to engineers and get some really credible people, while many startups can't.

When you get into the game has an effect on what you'll make and what your trajectory will be. If I'd entered the market in 2002, I'd have entered in a time when $50k was a good salary for an entry-level software engineer. (No, I'm not kidding.) In 2006, when I did enter, it was in the $80k range. At peak in early 2012, it was about $105k.

Getting an increase usually involves changing companies unless you're in the top 10% for political success and can have a real career there and keep getting promotions. Why is it this way? Well, there are two things to keep in mind. The first is that salaries are low because the company is taking a risk. A good software engineer is worth $500k easily, but the salary is going to be lower because there's a risk that any specific person is not going to be any good. So what happens after someone has a chance to prove him- or herself? Well, that's the second problem. Now you've worked for cheap for a year, and if you ask for a raise, you're asking your boss to pay more for the same work. If you ask for a promotion or better work, then you're a demanding subordinate and that hurts you as well.

Most companies have a "real player" track that involves a promotion (and a ~20% raise, with more potential for bonuses) every 2 years, and an "everyone else" track where a promotion might happen every 6-8. If you end up on the latter track, you need to change jobs and build your own real-player track. I think the optimal leaving point (if you're on the loser track) is around 2 years of employment, because at 2 years you are likely to get a real promotion in your next job (you have to create the impression, though, that you're about to get promoted where you are, even if it's not true) whereas bolting after 6 months will just get you a lateral move and too much of that is damaging.

Salary reporting sites tend to be accurate regarding base salaries, but data on performance-based bonuses and equity grants seem to be dodgy. There's also a hell of a lot of false signaling that goes on there, especially in finance where employers ask about bonus history and everyone claims to have had top bonus.

<comment><USER32> Don't mean to undermine your point but where in US is 12-14% raise average ? From what I know, most full time employers go for the usual inflation crap of 3-4%. Unless you change jobs or are in contracting, 12-14% seems high to me in the US.

<comment><USER23> 12-14% is better than average. I was using it as a euphemism for "mediocre", which it is for a person who lives in a high-COL city (one of the main reasons rents are so high is that career progress is faster out here) and in lucrative industries. When people not 1/10 as talented or capable as I am are, at the same age, making MD in investment banks, being acquired for millions, or making 500+ in private equity, I think it's fair to say that a 12-14% trajectory is pretty damn uninspiring. Money isn't an issue, but I'd be calling way more shots at my age if I hadn't taken so many bad risks (read: shitty startups).

I'm 0 for 2 in picking startups. The first just didn't have legs (our CEO had no idea what people actually wanted and would pay for) but my mistake was to spend almost 3 years trying to make it work. The second had unethical management who (a) tried to use my engineering credibility to justify dodgy personnel moves, attempting to force me to sign affidavits claiming my colleagues were incompetent (they weren't, but they had "too much" equity) and (b) after I resigned, did all sorts of disgusting stuff to try to fuck with my career.

You're right that if you don't change employer or get a promotion, you're unlikely to get a substantial raise. I assume that anyone who isn't promoted after 2 years is, unless they have essentially full autonomy to direct their work, going to start looking elsewhere. You'd be insane not to. Your future is your real boss, because the future is what actually pays us.

<comment><USER36> I am at a non-US profitable startup where the founders know exactly what people actually want and would pay for, but I wouldn't say the technical side of the start up is good enough to even call mediocre. The "technical" co- founder is more like a sales guy who takes a brief look at the technical side of things one day a week. They've been hiring fresh graduates without any experience. The code is getting difficult to maintain and performance is sluggish, resulting in excessively high server costs. The founders were fresh graduates when they started this company and I don't think they got funded by any venture capital. They have a knack for figuring out what people want and selling to them but I feel they lack technical experience.

I've been interning here for a few months, and they've already asked me to stay when I graduate, so that I can lead the IT team (around 4) on two products, handling software architecture, development process, performance optimisation, etc, etc and basically replacing him and hinted at offering a more than average graduate salary. They were apparently very impressed at my software engineering abilities. (I had done some freelancing work before) I've asked them why don't they consider hiring someone experienced in their 30's instead and they said that's what they're going to do if I reject their offer.

I know how to do what they want me to do more because of what I've studied at university than from my experience, and I feel nervous being given such a large responsibility. I want to work with people who write good code, with projects that already have a good architecture in place. Is that possible or are most companies in similar shape? I also feel that it won't be easy to advance _this_ fast at another company and I could be missing a great opportunity. My friends who recently graduated and are working at large companies tell me they're lucky to write >10 lines a day and that they are always stuck in meetings. There are other startups here but I don't think I'll get offered a salary that's any good.

What should I do?

<comment><USER23> The fact that they're good at figuring out what people want is not to be understated. That's not common, and most startups fail because they don't produce something people want and will pay for. All the technical muscle in the world can't overcome that. I've worked in two startups (one failed, one was too sleazy to even discuss) and did excellent technical work at both, but that didn't matter in the end because of executive problems. If your "business guys" are good at finding customers, figuring out what they want, and delivering it, that's a major asset.

Here's what you need. Get a VP-level title so you can hire people better than you and not push yourself down, because that's what will happen if you don't have a title. At this stage of the company, titles mean nothing, but at 40 employees, they will.

Now find at least one technical person who's better than you and try to recruit him. He'll be your mentor. He'll possibly want a title once he learns that you have one. That's fine. Make sure the founders are willing to make him VP as well, so you're equals. (You don't want to be the boss of someone better than you, so mandate that the people you hire answer directly to founders/the board).

<comment><USER36> They only call themselves Directors (who are supposed to answer to VP's), so what title should I ask for? They suggested "product manager", but that is BS because product managers are responsible for the features of a product, while I'll be involved in its development. I've also been told they don't plan to hire another technical person after me for two years. They made hiring decisions before by having votes between the founders. So even if they give me a vote I won't be able to hire/fire anyone I want. I suppose I can convince them later on...

Thanks for the advice, I have a clearer idea of what I want to do now. :)

</comment></comment></comment></comment></comment></comment><comment><USER37> I've been doing a broad job search for the last month, and my general impression is that the numbers are too low on those sites (in NYC, with 7-8 years of experience). It basically meant that I was in for a pleasant surprise!

I don't actually know what normal raises look like since I was in a startup and the raises tended to be huge followed by nothing for a while.

</comment><comment><USER38> First post - yeah!

Federal contractor in Washington DC.

Average increase in salary changing company: 17% (Low 2.5% increase, High 42% increase)

Average increase in salary through raise: 3.2% (Low 2% increase, High 4% increase)

I've generally found that salary reporting sites are inaccurate as the salaries listed are double what the reality is.

</comment><comment><USER39> When I was a Sys Admin in USA, your salary never increased unless you left the company and took a job elsewhere. Those were your raises, and it's why SA turnover is so high and how even companies just treat them as a dime a dozen now a days.

<comment><USER16> That is more the aftermath of the dot com days when there was a severe shortage of SA people. Big companies would train people and get them certified and those people would turn around a leave for double the salary. So companies quit training and did not expect anyone to stay over a year.

<comment><USER39> They continue to not be training, or doing a bare minimum of it. My current company thinks sending me to a 3-5k class a year is apparently more valuable than increasing my salary 3-5k a year. It's not.

</comment></comment></comment><comment><USER40> In India, salary hike when jumping the job is about 30% to 50% during first 5 years of experience.

Within the company, the high will be about 8% to 20%. There are always exceptions.</comment>