What kind of IQ tests? Math thinking? Language? Other? These tests are kinda old and don't prove anything besides the fact that the person has a certain level of intelligence but that doesn't mean they can code.
> What kind of IQ tests? Math thinking? Language? Other?
Both. They're not perfect, but I'm going to be picky and look for people who can generally reason well (both mathematically and verbally).
> but that doesn't mean they can code.
That's why you pair it with work samples.
The ideal hire would be an impressive GitHub + evidence of intellect. The GitHub shows they have coding chops, while an IQ test usually means they can react quickly and learn new skills.
That is an extremely long post that says "hire the rock stars". Except, of course, we all cannot only hire the very best, transformative people (like Jeff Dean at Google). And, he has no way to actually identify them, except "ask around".
It's entirely unrealistic as a business strategy. It sure is nice if you luck into it.
I agree with the principle of wanting to see code but keep in mind that expecting Github (or similar) is a bit ageist. I definitely went through a phase of my life where I coded like crazy and produced lots of interesting side projects, but that was long before Github or even Sourceforge existed. So I could point you towards some interesting stuff I passed around the BBS world in 1985, except that even I didn't bother to keep a copy after its usefulness faded.
I still have a bit to show on Github and mean to put up more when I have a chance but still, most developers find that when you've got a decade or more of experience, you start to want to take on new challenges and experiences (whether family or woodworking) in your free time rather than more programming.
What if all your most relevant work is owned by previous employers? Restricting hires to people with decent personal projects and/ or extensive open source contributions isn't ideal either.
I'm fine with only hiring people who have done some work outside their workplace. If they're really great at programming, they have the drive to try new things outside work. Indeed, a couple good personal projects is probably the best predictor of skill you could find.
(Skill and interest tend to be highly correlated.)
I used to believe that as well. Now I'm not so sure, mainly through my own personal experience.
For 5.5 years (2004-2009), I was a core developer and maintainer over at Xfce. Over that span of time I wrote tens of thousands of lines of code, perhaps more. I did this in addition to my job, which morphed from engineering project management to programming tasks that I didn't find very challenging.
After I left that job, I joined a tiny, early startup. The programming work there I found very challenging, and the insane hours quickly ate up any spare time I might put toward Xfce. Eventually I realized that lacking a life outside of work made me sad, so I left. Fast forward a little bit, and now I'm at another startup, which (while demanding, challenging, and rewarding) gives me time for outside pursuits and a social life. But I don't feel the desire to work on personal coding projects anymore. The job fulfills my desire to write code, and outside of that I'd rather be, well... outside.
It's interesting, because all my Xfce contributions are on git.xfce.org, and not on GitHub. My GitHub account contains 2 personal projects: a semi-finished Android UI library (which was really only relevant and useful in the 2.x days), and a script for building a Gentoo image for a Raspberry Pi (which I've since abandoned as I mainly run Debian nowadays). Looking at my GH account would be fairly unimpressive, and might even be worse than not having a GH account at all.
So I'd easily fail the GitHub test. If a particular company was making that a no-go for getting through an interview pipeline, well... their loss, I guess.
I'm responsible for a fair bit of hiring at my current company, and I rarely ask about personal projects anymore, unless a candidate has one listed on their resume. While I'm not always happy with the coding problems I usually give (they tend to be data-structure/algo problems that I'd probably have trouble solving in an interview setting), they do at least clearly show whether or not the candidate can write code, and I also get a rough idea of how cleanly they code, not to mention insights in how they approach and solve problems. And not being able to completely solve the problem isn't an auto-fail in my book either, as long as they tried to work on it and their approach (and whatever code they did write) was sound.
I do very strongly believe in the aptitude test + work sample formula as the best way to evaluate candidates, but the problem is more that it's not always so easy to apply those tests in a traditional interview setting. Maybe that just means we need to come up with a different way of interviewing, though.
I have a bunch of personal projects, but few of them are on github, and the ones on github are not done under my real name, because I find the concept of me having to work on nights and weekends to impress future employers offensive.
My personal projects also include things like my very playing around with a new language (so it is freaking ugly and so I would never want it used as a job indicator) and old abandoned projects that I've salvaged and updated as a favor to friends, which means the entire architecture is alien and "I Don't Care If It's Ugly Just Make It Work Because Right Now It Does Not Work At All" is exactly what the 'client' wants.
I also reverse-engineer game protocols and find vulnerabilities in them. There is no social good to me releasing that stuff. (No, I really don't feel like being a soldier in your Full Disclosure army.)
I do lots of coding stuff in my spare time. I don't do it to get a job, I do it because it's fun.
>> For 5.5 years (2004-2009), I was a core developer and maintainer over at Xfce.
>> But I don't feel the desire to work on personal coding projects anymore. The job fulfills my desire to write code, and outside of that I'd rather be, well... outside.
Another thing to remember is that you're 5-10 years older then you were at that point. Life priorities have changed. You might not be a caffeine-fueled 19 year old anymore, instead you're 28 with 2 kids and a mortgage. Or 34 and just have other things that interest you than tweaking Linux or exploring video drivers.
Sure. The intent of that statement was kinda muddled. I was more referring to the fact that my "main body" of open source code, to which my contributions stopped 4 years ago is all on a non-GH site, so it's interesting to look at what is on GH, which represents what I've done out in the open since then, which is... not much.
My assumption (which maybe is wrong) is that 5 years of OSS contributions that ended 4 years ago may not be all that impressive. Why did I abandon it? etc.
The github test isn't about your what you have on github. It's about what code you can show, out in the public. Github just happens to be the common way to do that now.
If a company requires Github specifically, than it's just a stupid company you wouldn't want to work for anyways, so it saves you the trouble.
You'll probably never get anyone who used to work at Google/Facebook/Apple/Twitter then.
The problem is that IP agreements in the state of California say that the employer is not entitled to work done "on the employee's own time, without using the resources of their employer, and unrelated to the lines of business of their employer". Google claims to be in basically every tech-related business there is. Do something as simple as a mobile app or casual game and you can potentially get in trouble for it because it may compete with a division you've never heard of.
There's a procedure to get around this, but it's fairly slow and bureaucratic, and so many Googlers find it more efficient to do their "for fun" coding as 20% projects. Facebook has a similar system with their hackathons. Apple just works its devs so hard they don't have time for independent coding products.
I think that GitHub profiles are a good way to identify good devs who don't work for the leading tech companies, but once you're in one of them you a.) don't have time for personal programming projects anymore and b.) find that the stuff that your coworkers are doing is more interesting than pretty much anything you could work on as a solo dev.
I like spending time with my friends and family, some of which I have to travel far to see, for one.
I spend 40+ hours a week in front of a computer, when I get a chance to go out in the world, I want to GO OUT.
None of these things don't mean I don't love software (I do) or I'm not interested in it (I am). I just have varied interests.
Disregarding that, I used to work for a Big Nameless Faceless Corporation, and the legalize in employment agreement said basically that because I was a software engineer for them, they owned all the software I wrote while employed, even if I wrote it on my own time and with my own computer.
I've heard one too many times that I have to react now and voice my confusion. When you have students and you want then to have had some work done outside of coursework, I'm perfectly ok with that as I understand the merits but I wonder is it true for people 10+ years into their career. I see great people having great jobs who, if they have free time, code something that can help their current job but that code also ends up being own by the employer and is very rarely released as open source.
GitHub is a false profit. Almost every excellent programmer I know has almost nothing in their public GitHub. I've been doing this for a great many years however going off my GitHub I'm barely a programmer if that's the metric you're tracking.
My opinion on this is that most of the interview processes is pretty old(over 20-30 years) and back then a good programmer was also a pretty good mathematician, and now most of the people that do interviews just use the same old patterns because, maybe, some of them don't know any better or because that is what they found in some books they have read.
I tend to hate the interviews that ask me to solve math and logic brainteasers because I don't see the value in them regarding my knowledge of programming.
Unfortunately there still are persons that view those that find security flaws in products, and report them, as a threat to the stability of the world, like if the problem is an insult to them. Never got to understand them.
I wonder if they read it as blackmail. Like imagine you received a phonecall from a stranger saying 'Your house alarm is insecure. Someone could break in at night if they wanted to. You might want to think about that.'
This, or somebody is making a lot of money selling flawed security infrastructure and doesn't want anyone to find out.
But yeah, Do... Not... Report... security issues unless-
1) The company has a history of being "chill" with that kinda thing: e.g., Facebook, Mozilla, Google, etc.
2) You do it super-anonymously. Like, drive 3+ hrs away to a college campus you've never been at. Go into their computer lab when it's really busy. Create a new yahoo email account with a name that is opposite from any hobbies you have, through a proxy in another country. Send them an email not using your regular grammar style. Stay in the lab for 3 hours, send the email during the 2nd hour. That way, if there are any cameras in the room they won't just see one person walk in and walk out within the 5mins the email was sent. Then leave the lab and never return, never log into that email account again.... ever.
That depends on what internal rules apply to the said university. For example the university that I've attended forced us to log in on Windows via LDAP but you could connect on linux without any problem without any account.
Interesting article but my impression is that you try to compare apples and melons and you want to get some results on oranges, they kinda look alike but they are not the same.
That would've been a pretty interesting law, mainly due the fact that there is no hard proof that connects possible tumours with the use of a cell phone, most of the studies I've seen so far show that there might be a possible connection between the two but nothing is yet confirmed.
Yeah, thats the problem. There's an "anecdotal" connection (IE: IMHO fake), yet I don't know anyone out of my peer group of rabid cellphone users who've ever had brain cancer. I've had a cellphone since 1996, cancer free daily cellphone user.
First of all most of the "older" programmers moved in management positions due the fact that this is a young industry and there was a big demand of managers, leaders that have technical skill and guess what most of them are now in the 40-50 years old range.