HN user

pixeloution

215 karma

Writing software since 1996. Writing quality software since 2002.

Posts2
Comments136
View on HN

Speaking of your tests - your general coding skills one has an actual bug in the code, as of a few hours ago (I sent an email about it, hopefully it gets fixed)

Getting a degree isn't a prerequisite; and its possible to learn enough on your own to get a great job in the industry. I have at least a few people on my team at fortune 100 company without degrees and making comfortably six figures.

You can read about some non-degree holders in the industry here: https://www.nocsdegree.com/

I'm not saying it's easy. There's a vast amount to know and master, and it will require a lot of practice building things to get the skills required. Not to mention study to get through the hiring hoops of algorithmic problems candidates are expected to solve at major companies during interviews.

Articles like this do a disservice to everyone. For starters: a Stack Overflow survey is not a random sample of all programmers - it's a sample of people who are on Stack Overflow.

A better source might be the Bureau of Labor Statistics - https://www.bls.gov/cps/demographics.htm#age - which shows

  * 68% of "Computer Programmers" older than age 35,
  * 45% of "Computer Programmers" above age 45. 
  * 29% of "Web Developers" above age 45
Most of this article doesn't hold up, but the agist part is the most egregious.

Personally a bit frustrated to see desktop applications go to subscription models where years can now go by without upgrades but I'm forced to continue to pay to use the app.

If I'm unsure on how long before there will be a worthwhile upgrade, am I paying $80 for this app, or $400? Its a bit like being told that you can buy an item but won't know its real cost upfront.

I understand subscription models where they offer something that's ongoing (remove disk, sync, whatever) but I find this model annoying and its forced me to change software I use quite a bit in the last few years (most recently moving off 1password).

Charge me more if you have to, but stop this "keep paying forever" madness.

I can't talk to you about my team's current problems, and neither should anyone else. If I do and you offer up a solution I'm in real trouble ... because that's a lawsuit waiting to happen.

Try to remember, this is the country where a range check function resulted in a lawsuit:

    private static void rangeCheck(int arrayLen, int fromIndex, int toIndex {
         if (fromIndex > toIndex)
              throw new IllegalArgumentException("fromIndex(" + fromIndex +
                   ") > toIndex(" + toIndex+")");
         if (fromIndex < 0) 
              throw new ArrayIndexOutOfBoundsException(fromIndex);
         if (toIndex > arrayLen) 
              throw new ArrayIndexOutOfBoundsException(toIndex);
    }

Only a few rarified corporate people and independent consultants can pull down pay in the 200s.

I'm not sure that's true. I've lost track of the number of software engineers I know who are in at least the low 200's Total Comp (in Texas).

Common? Probably not. Rarified? Not as much as you think. There's two just on my current team.

This is a big one: its a browser they don't have to pay to have google made the default search engine: https://www.cnbc.com/2017/08/14/google-paying-apple-3-billio...

It lets them use it as a jumping off point for some hardware: https://www.google.com/chromebook/find/?utm_source=en-ha-na-...

And it appears they now have an enterprise version: https://www.blog.google/topics/connected-workspaces/introduc...

I'm sure there's more, but I imagine, financially, I could have stopped after the first one.

I'm not sure I could give an in-depth answer, especially under pressure in an interview. What I could do is explain the important bits at a high level:

    * how a B-Tree index is structured (and how that affects range queries, and wildcard queries)
    * how a query uses a single index per table, or can create a merge index
    * how a covering index increases performance
    * how composite indexes affect queries, why you don't need an index on both (col-a) and (col-a, col-b)
I don't think its unreasonable to expect a senior developer to know this stuff. It affects your ability to write performant queries against larger (1M - 1B rows) datasets.

Just to add to the above comment, a diceware passphrase is MUCH harder to break than most people realize. For example, compare the possible number of combinations:

  Diceware, 6 words          2.2 x 10^23
  Diceware, 5 words          2.8 x 10^19
  Diceware, 4 words          3.6 x 10^15
  a-zA-Z0-9, symbols, 10     4.3 x 10^19
  a-zA-Z0-9, 10char          8.4 x 10^17
  a-zA-Z0-9, 8char           2.2 x 10^15
A 6 word diceware phrase has 100 million more combinations than the 8 character alphanumeric.

Any analysis which ties some outcome (self-assigned ratings) to income is flawed unless you control for income vs cost of living.

The engineer with a compensation package worth 150k in Silicon Valley isn't the same as the guy with the same package in Austin.

Even if users were willing, this would be woefully inaccurate information. Mint shows take-home pay. But you have to keep in mind ...

  * People contribute between 0 to X% to a 401k. 
    This couldn't be deduced from take-home.
  * Many companies have a Employee Stock Purchase Program, 
    which is deducted from payroll.
  * Some (Many?) programmers get a large chunk of 
    compensation in options or RSUs.
I think self-reported is likely the only way to get numbers without some extremely invasive requests.
[dead] 10 years ago

Some quick research turns up that this pays about $1300/month ... or around $40/hour. I'm basing the hourly on 4.3 weeks a month, 6 hours a week + one "full day" before class starts. There may be more hours involved (reviewing homework, helping students) making this an even worse value for the instructor. Does anyone have different information on the remuneration?

How I Interview 11 years ago

I don't think he's exaggerating; for the past 4 positions I've had to fill (at six figure comps) 80%+ of candidates with extensive resumes couldn't solve a simple recursion problem. We give the a notebook with an IDE and access to the language docs.

These folks with many "senior" level positions on their resume can't manage a task our last hire did in about 6 minutes.

I can only say that if you're ever hiring, you probably will ask people to code for you. You won't at first, but after you've hired a few who could "talk the talk" but then can't actually write readable, maintainable, and in some cases working code, you'll reevaluate.

There's a gap between knowing concepts and knowing how to apply those concepts. There's actually a certain (limited) amount of artistry to writing code. Hiring a programmer without seeing code is like hiring an Architect without ever having seen a house he's designed.

I would take that to an apple store. I have a mid-2012 retina Macbook Pro at home with full disk encryption turned on, and I never see anything remotely close to that kind of usage.

I'm 44 this year -- my last job change was two years ago, and it was to a Top 10 tech company. Now I'm responsible for heavily influencing the hiring decisions in my group. Here's the thing: most programmers are awful.

They can write code but they don't understand half of the libraries or technologies used. They learn the abstraction layers but have no interest in knowing how things work. And these symptoms get worse with age.

There's a point where most people get tired of relearning their skills; they no longer peruse new information in spare time, or even at work. If you aren't always learning, and examining things on a deep level, yes you'll be sunk by your forties. But I believe this is a choice on your part.

My experiences at Apple are vastly different than the author's; As a developer I've never had such a low-stress position. My hours will sometimes drift over the 40-43 mark but not often.

Why not use a recruiter? That's a great question. Lets take a fictional recruiter named Joe.

To begin with, Joe isn't working for you; you're Joe's product. That answer would be enough to turn me away.

Where are Joe's Interests aligned? With yours? No, Joe wants to place you in a job, at any salary. Joe's company gets 30% of your first year's income from the employer, and Joe himself gets a much smaller slice. Joe's slice of $120k is similar enough to his slice of 130k that he beneifts most from placing you at any salary he can get you to accept, and then moving on to the next position.

Ah. So Joe's interests must be aligned with the hiring company, right? Only to the extent that Joe needs them to hire you (or someone like you) and he needs you to last at least X months so he doesn't get a claw back. His interests are more closely aligned with the company than yours, but ultimately its about filling seats for Joe. He wants to convince the company that each candidate is THE candidate.

Does this sound like a guy you want to help you find employment?

And finally, in the form of purely anecdotal personal experience, I've had recruiters flat out lie about aspects of the position. At the time I was too naive to verify facts with the employer.