News for hackers. Stuff that matters.
Re:What is the best part about being a Software Engineer? by askyourmother on Thursday April 28, 2016 @04:29AM (#11587256)
For me, the best part is interviewing for new jobs. You have not lived till you are asked to reverse sort a binary tree, whilst skipping on one leg, having to show you are passionate about the job!

The disappointment was that the actual job did not entail data structures, Algorithms or even skipping! Just CRUD web apps.

Re:What is the best part about being a Software Engineer? by derefr on Thursday April 28, 2016 @04:34AM (#11587276)
This is the worst thing about this sort of "IQ dick-waving contest" culture, to me. I'd be fine with doing ridiculous CS Theory stuff in interviews, if the job was about doing that. I love that stuff, when my mind is geared into the right mode, and a job that required a lot of it would give me the ability to leave my mind geared into that mode. Instead, my mind has downshifted into the CRUD-dev gear from years of disuse, and you're asking me to shift it into high gear for the interview... only to shift back down for the work itself.

I get that every small company wants "the best and the brightest" in order to have more value on the table under acquihiring conditions, but there's really no reason that the person programming Facebook's Android frontend view-controllers needs to know how to answer doctorate-level category-theory questions.

Re:What is the best part about being a Software Engineer? by apercu on Thursday April 28, 2016 @09:01AM (#11588456)
I think it's also counter to good work harmony. Whenever I have worked with or hired the genius/best and brightest, a high proportion of them have difficulty playing nice with others or staying focused on routine work.

You need a couple really crazy smart knowledgable people. And then fill out rest of the team according to their roles and fit.

Re:What is the best part about being a Software Engineer? by pc86 on Thursday April 28, 2016 @09:58AM (#11588863)
EDIT: It looks like I replied to the wrong comment and quoted the wrong comment on top of that. No idea what happened.
Re:What is the best part about being a Software Engineer? by apercu on Thursday April 28, 2016 @10:20AM (#11589021)
At some companies, you're right...

I am seeing some stuff right now that blows my mind, complete incompetence getting promoted to executive levels. Unbelievable.

Re:What is the best part about being a Software Engineer? by fghrthtb on Thursday April 28, 2016 @10:53AM (#11589281)
Re:What is the best part about being a Software Engineer? by apercu on Thursday April 28, 2016 @03:34PM (#11591387)
Ahh, William H Whyte. I have lived it but not thought about him for years.
Re:What is the best part about being a Software Engineer? by naivepiano on Thursday April 28, 2016 @08:30AM (#11588285)
OMG I remember interviewing for a company asking all the right questions and talking about nice tech stacks and whatnot. People were nice too. Then I got an offer and I accepted it. First day in the job I figure that their main tech/language was TCL (of course they never mentioned it in the interviews). Stayed 2 weeks and went off running. The possibility of being stuck with some backwater tech killing off your future prospects is yet another of the freaking traps in this job.
Re:What is the best part about being a Software Engineer? by dkopi on Thursday April 28, 2016 @09:18AM (#11588546)
"First day in the job I figure that their main tech/language was TCL (of course they never mentioned it in the interviews)."

And you've never asked?

Re:What is the best part about being a Software Engineer? by naivepiano on Thursday April 28, 2016 @09:44AM (#11588741)
Of course I did. They lied with "java".
Re:What is the best part about being a Software Engineer? by pc86 on Thursday April 28, 2016 @09:59AM (#11588875)
Don't you think it's much more likely that their stack is largely Java but you were working on a largely TCL piece of it, than it is that they decided to lie and trick you into taking a job you wouldn't otherwise want?
Re:What is the best part about being a Software Engineer? by naivepiano on Thursday April 28, 2016 @10:24AM (#11589049)
No - I don't think that because I stayed there long enough to make sure that the lion's share was TCL. What they said they meant with "java" was that they were going to rewrite the thing in java (this -4 years later- is yet to happen afaik). Even if it were that I was to dive in their TCL hell still I was tricked big time to agree to that. I'm afraid though that this was not that uncommon as there are numerous backwater positions (aka "legacy") that are in desperate need for maintainers.

Note: that's not to be racist against TCL but things being what they are in the trade - spending 3 miserable years with TCL expertise to show in my CV would be suicidal.

Re:What is the best part about being a Software Engineer? by gaius on Thursday April 28, 2016 @10:05AM (#11588924)
Your username is well chosen - Tcl is a very underrated language. I'll wager they engineer rings around their competition. Good luck with the Java. You know it's the new COBOL right?
Re:What is the best part about being a Software Engineer? by naivepiano on Thursday April 28, 2016 @10:36AM (#11589140)
Tcl may be the best language in the known universe (highly doubt it) but try running a job search for it in linkedin. Then do the same for java. I'm not the damned CEO you know. I need to think of my own employability/career.
Re:What is the best part about being a Software Engineer? by JustSomeNobody on Thursday April 28, 2016 @11:29AM (#11589566)
That is the saddest part of our industry. There are so many cool and interesting technologies we'd like to work with, but we can't if we actually want to feed our families.
Re:What is the best part about being a Software Engineer? by tajen on Thursday April 28, 2016 @06:16AM (#11587658)
I've interviewed interns; Obviously I didn't design an IQ test but a CRUD app, very similar to the real work, so they could have a taste about the contents of the internship. Most of the test was just navigating around template files, Java and JS files. It's surprising that navigating around wasn't even necessary as some applicants couldn't properly change an if/elseif/else instruction, and the best applicant just seemed to luck past all possible bugs he could have created. Turns out it wasn't luck, he was just good.
Re:What is the best part about being a Software Engineer? by dkopi on Thursday April 28, 2016 @08:07AM (#11588174)
Yeah, but If I had to reverse a linked list without recursion to be hired, I'll be damned if I'm going to allow someone else to be hired without doing that.
Re:What is the best part about being a Software Engineer? by Joof on Thursday April 28, 2016 @02:18PM (#11590862)
If there isn't tail recursion should I implement it with trampolining in the compiler first?
Re:What is the best part about being a Software Engineer? by gonzo41 on Thursday April 28, 2016 @09:50AM (#11588799)
put it in a stack then take it back out, first in last out.
Re:What is the best part about being a Software Engineer? by dkopi on Thursday April 28, 2016 @09:54AM (#11588836)
Follow up is usually: now do that with O(1) memory.
Re:What is the best part about being a Software Engineer? by jstelly on Thursday April 28, 2016 @01:36PM (#11590567)
This doesn't seem like a very valuable interview question anymore because it's well known and you can probably google the simple answer, but if not this is the basic idea (walk the list once pointing each next at the previous node and return the new head when you reach the end):

  List *Reverse( List *pList )
  {
	List *pPrevious = nullptr;
	List *pCurrent = pList;
	while ( pCurrent )
	{
		List *pNext = pCurrent->GetNext();
		pCurrent->SetNext( pPrevious );
		pPrevious = pCurrent;
		pCurrent = pNext;
	}
	return pPrevious;
  }
Re:What is the best part about being a Software Engineer? by khedoros on Thursday April 28, 2016 @07:57PM (#11592801)
I've never seen an interview question that I couldn't Google an answer for, after the fact. That doesn't seem like a necessary criterion to decide if it's a valuable question or not. However, it's a problem if the question's so common that even unqualified candidates would be able to answer it.

We ask these questions for a few reasons. You hope that the candidate hasn't seen it before, because you want to see their problem-solving process. You also want to see which questions they ask, which assumptions they make, etc. How well do they explain their thought process? Do they understand the algorithm, or did they rote-learn it?

Will they need to jump through algorithmic hoops writing a CRUD app? Probably not...but they'll need to solve problems creatively. It might be better to walk through an actual investigation+bugfix in a piece of software, but that takes more time to do (interviewer+candidate) and more effort (interviewer) to set up, so it's not surprising that most interviewers would take the easier way out.

Re:What is the best part about being a Software Engineer? by huherto on Thursday April 28, 2016 @02:19PM (#11590868)
I used these examples for interviews back in the 90s. I liked the follow ups. I don't use it any more because linked lists with pointers doesn't seem relevant now that computer languages have some sort of native dynamic list implementation.
Re:What is the best part about being a Software Engineer? by jcadam on Thursday April 28, 2016 @10:38AM (#11589163)
GAAAAAAHHHH!! I mean, Of course I knew that already :)
Re:What is the best part about being a Software Engineer? by mesozoic on Thursday April 28, 2016 @12:23PM (#11589966)
It's hard to know you can simulate a function stack with a for loop I guess...
Re:What is the best part about being a Software Engineer? by crdoconnor on Thursday April 28, 2016 @05:29AM (#11587459)
CRUD web apps actually need decent knowledge of database theory but nobody asks about normalization in interviews.

The algorithms thing is pure cargo cult behavior (Google asks about them in interviews).

Re:What is the best part about being a Software Engineer? by ak39 on Thursday April 28, 2016 @07:15AM (#11587892)
Agreed. Data before algos. Isn't that what Linus said too?

Over my looong career doing CRUD applications (& proudly loving it), I've seen too many over-engineered programs and "business logic" introduce just to compensate for poor data models.

Re:What is the best part about being a Software Engineer? by jazzyk on Thursday April 28, 2016 @10:01AM (#11588890)
Ha, ha. I would hire you in an instant.

Wit/sense of humor is an indicator of intelligence. Which means even if you are not entirely familiar with the whole stack of tech we use, you will pick up things fast.

Sense of humor also helps immensely in crunch times...

Re:What is the best part about being a Software Engineer? by mej10 on Thursday April 28, 2016 @07:23AM (#11587925)
Get a different job? There are plenty of interesting ones that don't involve writing CRUD apps, and even ones that will quickly exhaust (or at least, put to the test) your knowledge of data structures and algorithms.
Re:What is the best part about being a Software Engineer? by bitwize on Thursday April 28, 2016 @09:04AM (#11588478)
But the fact is that most of those are off limits unless you know the AWS APIs, Chef or Puppet, and jQuery like the back of your hand. And by "know" I mean "have demonstrable paid work experience in".
Re:What is the best part about being a Software Engineer? by mahyarm on Thursday April 28, 2016 @06:36AM (#11587720)
In many companies the algo part is like 1/4th of the entire interview. The rest like code design, working with product simulations and coding challenges are pretty relevant, even in CRUD land

Its just the algo stuff you usually have to review before hand vs all the others

Re:What is the best part about being a Software Engineer? by pc86 on Thursday April 28, 2016 @10:04AM (#11588914)
This is almost exactly like Microsoft's response to the ribbon criticism when it first came out. They were so proud of themselves that a handful of those buttons were used 30% of the time or whatever, but ignored the fact that another handful was used <1% of the time yet were still visible by default on the default tab.

Which is to say your justification is very much "75% of our interview process makes sense, it's only this 25% that you almost never needed any any previous job, you don't need at this one, and if you're self-taught you probably never learned in the first place, but we're going to ask you anyway because it makes the interviewer feel smart."

Re:What is the best part about being a Software Engineer? by lostcolony on Thursday April 28, 2016 @08:56AM (#11588425)
'Its just the algo stuff you usually have to review before hand vs all the others'

There's the problem. If it's something you have to review, it's not something you use that often. Unless the job is going to have you using it often, why is everyone's time being squandered on it?

Re:What is the best part about being a Software Engineer? by emodendroket on Thursday April 28, 2016 @09:52AM (#11588817)
I guess the problem is you need it infrequently but when you do need it it is really helpful to know.
Re:What is the best part about being a Software Engineer? by collyw on Thursday April 28, 2016 @01:20PM (#11590456)
And easy enough to look up.
Re:What is the best part about being a Software Engineer? by emodendroket on Thursday April 28, 2016 @01:35PM (#11590561)
But what are you looking up? You have to know what class of problem you have to be able to look it up.
Re:What is the best part about being a Software Engineer? by lostcolony on Friday April 29, 2016 @07:26PM (#11599390)
And if the interviewer will be satisfied with "Oh, this looks like an X kind of problem. I'd just google that and go from there", fair enough.
Re:What is the best part about being a Software Engineer? by emodendroket on Monday May 02, 2016 @09:21AM (#11611071)
A decent interviewer is probably willing to be cooperative and fill in some details for you. I guess some places are all about trying to play "gotcha" but the hell with them.
Re:What is the best part about being a Software Engineer? by kevindeasis on Thursday April 28, 2016 @05:29AM (#11587458)
Reverse sort a binary tree? Is that like doing a reverse level order traversal then sorting it with like let's say a merge sort?
Re:What is the best part about being a Software Engineer? by seanp2k2 on Thursday April 28, 2016 @05:50AM (#11587551)
You just switch to big endian and it'll blow instead of suck
Re:What is the best part about being a Software Engineer? by cloudjacker on Thursday April 28, 2016 @11:00AM (#11589344)
haha are you being sarcastic?
Re:What is the best part about being a Software Engineer? by JustSomeNobody on Thursday April 28, 2016 @07:41AM (#11588027)
Wait, what? You're experience doesn't matter? Your degree doesn't matter? You have to demonstrate you have the superior fizzbuzz implementation!? Tell me it's not TRUE!