Does Google's Hiring Process Put Off Talented Applicants? - <AUTHOR> https://shkspr.mobi/blog/2016/11/does-googles-hiring-process-put-off-talented-applicants/ <comment><USER2> Did the process put me off? Absolutely. So much so that I don't want to apply again.

Before even starting the interview process, I took weeks to reviews algorithms, chopped through interviewcake/hackerrank/leetcode challenges, did numerous test-interviews on pramp and made sure Google was the last of my interviews to get as much experience in as possible. In the end, it didn't matter.

The phone call was almost not understandable. My interviewer had a horrible accent and extreme background noise, almost like he was in a public space with a really bad microphone. I had to ask 5 times to repeat his question or clarify what he meant which definitely irritated him as well.

When asked before the interview in what language I would like to do it, I said python. My interviewer gave me a C++ question (+ C++ class) with streams (I think that's what it was? I'm not a C++ guy). When mentioning that I said I want to do it in python he said "oh uhm... well, just implement your solution in python then", which was a little weird because python doesn't support streams.

I asked numerous times during the interview if I understood his question correctly, he said yes. I went ahead with implementing it that way and then later he asked me why I did it this way and that he wanted something else.

It was a disaster. I didn't pass the interview (they were 50:50 on me) and do not plan to apply again. I am at a great startup now and probably forgot most of that algorithm and data structure knowledge again.

<comment><USER3> Same experience. Lots of noise making it hard to ask questions. The guy sounded like he was blackmailed to do that kind of job. He asked me to "sum the contiguous number in the array". So I start writing the code looping through the array, finding the boundaries and adding the elements. After 15min the guy is like "why did you add the elements? I asked you to summarize them."

Ok. Never answered their email again.

<comment><USER4> They do this on purpose to make you clarify the question.

<comment><USER5> If someone asks you to "sum an array" then it's quite reasonable to think they mean calculate the sum of an array. Some languages (PHP springs to mind) have native "array_sum" functions. Wondering if _someone from Google, who is interviewing a developer_ means "sum or summarize" would be weird.

</comment></comment></comment></comment><comment><USER6> I have recently turned down another Google recruiter like this as well. Position in a domain that is not really my key field and only, maybe, after their crazy interviewing process.

I am sorry, but I don't have time nor money for days of this coding test/trick questions nonsense, especially as I would have to travel for the interview abroad. I am 40 years old, have plenty of experience, scientific publications on the subject, code in public repositories available and even can supply personal references if someone wants to call those people. If you want to treat me like a kid fresh out of the school expect the same treatment back.

And even if you do all this, you are __not __guaranteed to get any specific position - when I have asked the recruiter what kind of position would I be interviewing for - junior, senior, developer, team leader, whatever, I was told "this is not how we work - if you pass the interviews, then we will assign you to a team that we think best fits with your experience". So, in other words - go through the grueling interviewing process and finally discover that the position may not even be relevant for you, completely wasting everyone's time.

No, thank you. I have better things to do with my time.

<comment><USER7> _So, in other words - go through the grueling interviewing process and finally discover that the position may not even be relevant for you, completely wasting everyone 's time._

Oh but you see that's where you're confused.

You see, you aren't interviewing for a position, in order to pursue your interests or advance your career.

You're interviewing to work at Google.

And thank your lucky stars if they accept you! Because OMG Google!!!

<comment><USER8> Lol. How true. They have more or less one cash cow product (ads) that prints them money. The rest are just self-indulgent hobbies subsidized by that cash cow.

And that's grounds for self proclaimed greatness? Sure, Google does some cool stuff. But their (self-proclaimed?) greatness is overrated. To. A. Fault.

<comment><USER9> And that cow is blocked and ignored by many millennials.

<comment><USER8> Yup. And Google+ was supposed to help mitigate that risk. Look how that worked out. What's REALLY stupid is Google had a (crude) "social network." It's called YouTube. All that genius and no one said "let's take advantage of the YouTube foundation and trick it out of bit..." And in the meantime FB streams more video than YT.

Come on now. That's fucking hilarious in the context of treating people like circus animals and call it an interview process.

</comment></comment></comment></comment></comment><comment><USER10> I always wonder how Google manages to hire. I have a good friend there, but it was only because another role fell through that she ended up at Google; had the other company's HR department decided it was okay for a husband and wife to be working in the same department (different teams), she'd have gone there first.

For myself, Google's recruitment process was pretty laughable. I applied once in college for an internship, which was never responded to (fair enough), then had a recruiter reference it three years later when I was actually looking for another job, which I followed up on, but then had them drop off the radar (as seems pretty common) for a month, as I took a job elsewhere, and then later recruiters doing the same thing, referencing the time I applied 5-7 years earlier as 'expressing interest'. No, not interested.

It's just as well their interviews are geared for college students, because that seems to be the only type who would actually tolerate their hiring process (well, that and the type who doesn't actually need an interview, the famous 'oh, you have literally written the book on X, come work on X here' sort)

<comment><USER11> " (well, that and the type who doesn't actually need an interview, the famous 'oh, you have literally written the book on X, come work on X here' sort)"

Well, they have a reputation for absolutely disregarding whether you are famous or not:

[https://twitter.com/mxcl/status/608682016205344768](https://twitter.com/mxcl/status/608682016205344768)

<comment><USER12> Even if you are in:

"Ken Thompson must take the mandatory C language test to check-in code." [2010]

[http://www.theregister.co.uk/2010/04/21/ken_thompson_take_ou...](http://www.theregister.co.uk/2010/04/21/ken_thompson_take_our_test/)

</comment></comment></comment><comment><USER13> I did the Google interview process and it lasted around four months. Finally, their decision was to say 'no' to me. They reached out for me twice after that, asking if I was interested in doing the entire process again. I turned them down both times and tried to politely explain that I didn't have any more time for them, that I already invested all the time that I was willing to invest in any company and more... Hell! I even used a week from my vacations to travel to their offices! What I don't understand is, do they expect us to dissappear from our jobs for a week, to travel to their offices, and not loose our current jobs in the process?

<comment><AUTHOR> Weirdly, it seems very oriented for a European set of employees. A friend of mine who joined earlier this year was quite happy to burn through several days of holiday in order to take the interviews. But, as we get ~28 days a year, it isn't such a big deal.

<comment><USER14> I am European. In Europe people have a strong work-life balance culture with the main focus on life :). I cannot imagine that any European would want to sacrifice holidays for a job interview. Normally people call in sick if they need to go to for an interview. And yes, Europeans have 25+ days annual leave, but the general feeling is that this is not enough. I think the priorities for the average European are as follows: Family > Friends > Hobbies > Holidays > Beer > Food > Cat > Dog > Neighbor's Cat > Something very unsignificant > Work

<comment><AUTHOR> Hahaha! I am European also. Well... British, so European for now :-(

I think it depends on the office culture. Where holidays are booked months in advance, taking "sick days" for interview seems more normal.

</comment></comment></comment></comment><comment><USER15> I have friends in the local Google office, and once long ago I interned there. A few years ago I decided to stop telling off the recruiters and give it a go.

I had 4 interviews where I needed to be exceedingly clever very quickly. I was for two of them, and wasn't for two of them, and so I was a no-hire. Given a few days to think through the problems again, I was able to solve them all in my head- just not in 45 minutes. None of the interviews asked about my ability to design systems, how to test or manage large-scale applications, how to gather requirements and work with customers.

My conclusion is that Google is primarily looking for people who either have every algorithm and problem memorized and ready to regurgitate, or exceedingly clever people who can solve tricky problems on the spot. I guess this works for them, as they're a very valuable company. On the other hand, I sometimes wonder if it works _despite_ this process they have.

<comment><USER16> "None of the interviews asked about my ability to design systems, how to test or manage large-scale applications, how to gather requirements and work with customers."

No company will ever ask such questions, which is mind boggling. They will all ask minute questions about sorting algorithms which you will never code instead of asking questions related what you will be doing day to day or stuff that is actually critically important.

No one asks design questions, perhaps because it is an open-ended question. But aren't those the best question for a role that often requires coming up with new solutions?

EDIT: perhaps I was too harsh by saying "never". In my experience, companies have occasionally asked about design, but very few and very little in terms of the ratio with algorithm questions. Part of the problem is the "new interviewer every 45/60 minutes" style of interviewing. They all come in and start off with an algorithm question. Each and every one (at least the technical ones).

<comment><USER15> Replying 11 days later so maybe you never see this but...

I'm an interviewer (and SDE) at Amazon and (at least in my division) we won't do a hire loop for a non-entry level engineer that doesn't include a design interview. It can make or break a candidate, but if you've been in the industry for a few years we expect you have some ideas beyond "Get a bigger database server" when we ask how you'd scale a solution.

</comment></comment></comment><comment><USER17> You developers don't get it. Think outside of the box. It's like that recruiter emailed me about a new awesome sounding job and I never heard from them, wonder why? Well you know why? Because it was an automated email and the job didn't exist.

Back to Google hiring process. It's a perfectly legit way for Google to discriminate. Do you think Google doesn't know their hiring process is stupid? They do. They don't want to hire experienced, smart engineers. They want to hire inexperienced engineers. Only those will work for free pizza, longer hours. If you are not willing to study 4 weeks for the interview, then you won't be staying until midnight to write code in exchange for free pizza.

Let's talk about working at fun projects at Google? Really? Do you think fixing CSS issues in Gmail will be a fun project? I'd rather not work at Google and ;

* Have time to do my own laundry.

* Have time to eat out any time with my own money.

* Come to work at 9 leave at 5 and enjoy my life.

* Work with cool people and have fun, instead of working under stress with bunch of arrogant people.

This is exactly the people Google wants to hire. Inexperienced, not so smart engineers. I'd never, ever work for Google, and they would never want to hire someone like me. See, their interview process works perfect for them.

<comment><USER18> Have you worked at Google? You seem to really know what's it's like over there.

All these points you've mentioned about a good place to work, is pretty much what I've been experiencing at Google. Great life work balance if you want it. When it comes to big corp, It seems like a great place to work if you have kids.

The interview process wasnt much longer than any other Big corp ive interviewed with. I was in a position where I had and liked my job, so I was in no rush to leave.

<comment><USER17> Are you a developer at Google or marketing/sales/helpdesk, etc?

<comment><USER4> I know several people at Google and other Big4/Unicorns (Airbnb, Facebook, Microsoft, Amazon) and I can assure you none of them are like what you've described.

</comment></comment></comment></comment><comment><USER16> For me, the main reason why I turn down Google's requests for interviews is blind allocation. Google wants you to go through interview after interview without knowing what role you might get. I am far too experienced to accept whatever random job a company might have. The last time they contacted me and told them no, they came back with an actual position of Site Reliability Engineer. Definitely a job I do not want. Imagine going through the interview process only to be offered a position that is not to your liking?

It has been almost a year since I heard from Google. They are due to send me another email soon.

<comment><USER19> I recently joined Google and it definitely didn't work that way. You aren't usually interviewing for a specific team, like with smaller companies. But once you get past the interview your recruiter works with you to find teams that you will be interested in. In my case I talked to 3 hiring managers that were all working on the exact type of project I expressed interest in. I've seen it work this way a bunch of times when hiring for my team since joining.

I'm sure it doesn't always work this way but from what I've seen it's certainly the intention.

<comment><USER7> _But once you get past the interview your recruiter works with you to find teams that you will be interested in_

That just confirms his/her point.

If you don't know what you'll be doing until after you've gotten through the recruitment process, it's blind placement.

<comment><USER20> There's a significant difference between this and what Facebook does where you don't know what team you will be on until after you join Facebook and complete their bootcamp.

<comment><USER7> So Facebook is even worse. Good for them!

</comment></comment></comment></comment></comment><comment><USER21> If Google (or any other company) don't know whether they should hire you after 6 interviews, I think that says more about them and their process than you.

<comment><AUTHOR> I quite agree - that doesn't stop it from being an emotionally exhausting experience.

</comment></comment><comment><USER5> 6 interviews over a period of months isn't necessary to find great hires; it's a way of filtering people out of the interview process. The cost of losing out on talented people is balanced, at least in part, by the fact that their process puts off far more older, experienced developers and managers with families than younger people who dedicate a chunk of their life to the company.

A job interview is a negotiation. Go in to it with a clear goal - "a solid offer after 3 interviews" is a good baseline for a giant like Google - and if you don't get what you're looking for, be willing to walk away.

<comment><USER22> I would expect Google to reject that proposal flat out. They are incredibly keen on process and in this case the process feeds into one of their core ideas, namely that hiring the very best is crucial. Unless you are a major figure within the industry, they'll insist you do it their way, full stop.

<comment><USER5> Google today is operating as if they're Google 10 years ago - back then they were an incredibly exciting company with more potential than practically any other business if you were a talented developer. That _really_ isn't the case now. Google are still phenomenal, but so are other companies now. Google can't say "do it our way or you get nothing" when a good potential hire will be interviewing with half a dozen or more other 'unicorn' companies, especially when those other companies are doing world-changing, ground-breaking work whereas Google's core products are mature, essentially finished things that lack that excitement.

</comment></comment></comment><comment><USER23> I suspect it selects for a very particular type of person -- someone who values the opportunity to work for google more than their own time; and consequently results in employees who are eager and willing to put the company before themselves, work long hours, and not challenge the company's management or policies.

It's like a gang initiation: put them through an ordeal to test and cement their loyalty.

<comment><USER24> Googler here, I don't find that long grueling hours is something they select for or that Google is particularily known for.

But IMHO the interview process (which I dislike) definitely selects for new- grad types. From my perspective it's very heavily biased against industry- experience types and in favour of people who are comfortable in the "look I can excellently apply what I learned in my Algorithms/Data structure course on a whiteboard without sweating and getting nervous".

I should also note that the interview process also puts a lot of burden on Googlers. People, especially senior people, spend a _lot_ of time interviewing.

<comment><USER25> Yeah, I had an interview where it was blatantly obvious the person doing it didn't want to spend the time. It was a remote interview, somewhat far along the process (e.g. after screening and some technical) via Skype, but sound only, no video. I found that a bit weird not seeing the person I was talking to. But realized during the screen-programming-session the interviewer was busy doing something else, so it was probably why.

</comment></comment></comment><comment><USER26> In another refutation of Betteridge's Law, the answer is yes. Google has been relentlessly trying to recruit people in my peer group for a long time. I guess it's a specialty that's in high demand somewhere within the 'plex. A lot of these people are very talented indeed, and about half of them just won't even consider Google. Of those, it's another even split between those who are uninterested in Google generally (privacy issues or ad-based business model) vs. those who are specifically put off by the interview process. So that's maybe a quarter of that sample. It's something I'd be deeply concerned about if I were at Google myself, but I guess they feel that if they just fling enough money around they'll find enough people willing to put up with that crap, and since they literally have more money than they know what to do with it's not a problem.

<comment><USER27> Just out of curiosity, what area are most of you in?

<comment><USER26> I work on distributed filesystems. Most of the people I'm talking about work on various forms of data storage, though I could also think of a couple in virtualization, containers, config management, etc. One of the perks of being at Red Hat is that I get to rub shoulders (and sometimes bump elbows) with people across a pretty broad range of specialties.

</comment></comment></comment><comment><USER28> Yes, absolutely. Google is legendary for this. They are turning off not just talented applicants, but presumably applicants with other options and applicants with a good dose of self-respect who won't put up with such a long, impersonal process.

I've been in the world of 20-to-30-person start-ups for the last several years and seen some amazing recruiting processes. Emails to new leads are personal, not copy-pasted, and take context into account. Phone screens weed out all but the most likely applicants to work out. On-site interviews are a chance to get to know the team. Offers are made quickly, even same-day.

</comment><comment><USER29> Well at least it has put me off, after being rejected twice.

I did not even apply, rather was invited by their HR.

Most likely I am not skilled enough to work there and am just a vocal average developer, fair enough, no complaints about it.

But then don't spam me all the time saying how great addition I would be to whatever team X, either I am an average developer or a great addition to the team.

<comment><USER30> You're always learning, just because you're not where you need to be today, doesn't mean you'll never reach the bar.

</comment></comment><comment><USER31> I once consulted at a Big Corp that also focused on hiring and burning through fresh college graduates. I imagined the culture must have been a bit like google as a result. This was a large health care company in the midwest. They didn't have the prestige to hire from Stanford or CMU, but they could get some of the best grads from second and third tier schools.

They'd hire these kids in and put them to work on their legacy monstrosity, expected 50 hour work weeks, mediocre benefits, and mediocre pay. The result was a lot of really talented people literally wasting years and not advancing their skills, and not getting to use any current, marketable technology. It was also a highly toxic environment as these same capable people crucified each other in code reviews and one-up-man-ship.

Obviously google must not be quiet that bad, but I'm also sure they have a lot of really talented people wasting their abilities on internal CRUD apps.

<comment><USER32> This is... very, very much unlike Google. Almost the opposite; Google puts a lot of work into figuring out how to keep its employees happy. And, if anything, it has the opposite problem than "working on a legacy monstrosity" \- there's enough internal mobility that it's hard to convince people to work on something lame. (Obvious bias: I work there a day per week still.)

<comment><USER33> _Google puts a lot of work into figuring out how to keep its employees happy._

I'm not sure how you can say this for a company that's notorious for using closed allocation.

Worst horror story I've heard, here on HN, was an EE who was also good at Python. He sure thought he was hired to do hardware, but found himself stuck writing Python to test hardware. Not wanting to end his EE career, he of course had to resign.

And, yes, I know in theory you're able to quickly transfer out of that first position if it's not a good fit, but like the anecdote above, we've heard too many stories where that doesn't work in practice.

As others have noted, the whole thing for non-VIPs seems expressly tuned for new college graduates, who, in the case of this closed allocation policy, generally won't mind working on "whatever" for 18 months.

<comment><USER32> First - I've never entered Google as a fresh grad, so I have no idea what the experience is like. More of my students have entered after their Ph.D. than after their B.S., so again, more bias. All but one of the fresh Ph.D.'s who went there are still there, and seem generally happy with the way their careers are going; one left after a few years for a startup.

But, to more directly address your question with the information I do have, there are a lot of things that make a job good or not good. When it comes to a lot of the other things - benefits/perks, ease of getting things done, low overhead, responsive management, good culture, smart colleagues - Google does very well.

w.r.t. the actual job spec and happiness - all I can say is that there's likely to be a bias in hearing from people who were dissatisfied. But, again, my colleague set is biased towards seniority and people who've chosen to stay, so either way, you're getting an uneven view. :)

<comment> le-mark This response is much more measured than the previous one. The grand parent was clearly talking about fresh grads, yet you chose to respond as if you're exceptional experience was more relevant. If PhDs have a douche rep, this is an example of why.

<comment><USER32> There's a lot of objective evidence that Google is successful in being a good place to work. I assumed it wasn't necessary or productive to re-hash it. They're consistently ranked at the top of various "best companies to work for" lists, blah blah -- and while we all know those are partly a PR game, there's also some truth behind it.

The note to which I responded was by someone who had never worked at Google, and was making a large assumption based upon their experience at an unrelated company ("a large health care company in the midwest"). Many of the things in that note are factually incorrect as a basis for comparison ("mediocre benefits, and mediocre pay", said no Google or Facebook engineer, ever).

The point raised by hga has more to go on -- I don't know how common it is to be stuck doing things like that -- which is why I gave a more careful response to it.

(As an aside, I don't think it adds much to the discussion to make a personal attack or a categorical attack against people based upon their education. I welcome criticism, but it's certainly not fair to judge all Ph.D.s based upon my response, as much as it's not fair to assume that everyone in Kansas City misuses apostrophes based upon yours. :)

<comment> le-mark Oooh, you read my comment history, aren't we clever? Who so ever dissembles and back tracks twice(!) to explain and justify a banal internet post, they may have something to consider.

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> Yes, Google has read the "How to make enemies and alienate people" book and likes to apply it

But to be fair, they're not the only ones doing it. Sadly.

It's quite funny when recruiters come offer me repeatedly the same opening that I was rejected from on grounds of "not good enough test results" or "not enough experience in certain areas" (which sometimes are a 100% fair rejection but more often than not have a pass "grade" of slightly below top marks, _which does not make sense_ , especially for your run of the mill web company).

</comment><comment><USER35> For me, it's less about the hiring process, and more about actually getting an interview.

When I finished my CS degree, I considered applying for Google, but I ended up working in a startup instead, which is probably for the best, because I ended up getting thrown into the deep end and learning a ton.

A few years later, I had worked at a few agencies, and had a few decent projects/promotions under my belt, so I decided that I'd apply to Google, just to see what my chances were. I submitted my CV, and got a flat-out rejection. Not to worry, I thought. There's always another time. A year ago, I submitted my CV again, and after about two weeks I received another rejection.

It might be because I work on the .NET stack, but Google won't touch me, it seems. I wouldn't consider myself a bad developer by any means. I've contributed to open-source, I've got a decent rep on Stack Overflow, none of my employers would have anything bad to say about me. I've had offers for interviews from Amazon and once from Microsoft; I refused the former, and accepted the latter, although the recruiter never got back to me. Personally, I consider the process to be quite fun, and while I've probably forgotten most of the content from my Algorithms classes, above anything else I think it'd be a nice thing to try, even if I don't get the job. At the very least, it'll be a good opportunity to test myself to see if I can (re)learn the stuff I'd need to be a Google developer.

<comment><USER4> I would contact a recruiter directly, you could probably find a few emails on LinkedIn. It's surprising though, I was under the impression that they interviewed everyone.

<comment><USER35> I've tried that too, and still no luck! I've got three different Google recruiters, and I've messaged about roles in different areas before, and no bite.

It's really weird. I get at least 5 emails a day from recruiters in general, and the occasional email from a larger company, but Google clearly don't want me.

</comment></comment></comment><comment><USER36> I was contacted by a Google recruiter, and she told me how grueling the interview process was. She said I could use up to four weeks to study. No thanks. I have a full time programming job. The notion of coming home to practice balancing a binary search tree, or finding the kth smallest prime palindrome in a linked list or whatever.....is revolting.

<comment><USER37> This has essentially been my attitude. If you're interviewing me based on my experience in my profession, why should I have to _study_ for anything? We're talking about things I do 8+ hours per day. Study? That would only be needed if the questions are specifically not related to the job I'm expecting to do.

</comment></comment><comment><USER38> I'm not sure what role the author is referring to, but I never heard of ordinary job applicants taking 6 months. I applied to Google online for a software engineer position and their recruiter reached out to me the next day. We scheduled an in-person interview a couple weeks later (since I wanted a little time to prepare). After the interview, it took a little under two weeks for them to move forward to meeting potential teams, and one more week for an actual offer to be finalized. It could take longer than this, but they keep candidates in the loop.

<comment><AUTHOR> Author here. I'm just going by what the recruiter told me. He was clear that they need to do due diligence and that I could expect _up to_ a 6 month process.

I sounds like yours took around 6 weeks - which I still consider to be quite a long time. My friend told me she went through 3 months of interviews.

These weren't for Director Level (or whatever Google calls them) but for senior product manager type roles.

Of course, neither you nor I have data about the average length from application to onboarding, so it is hard to argue specifics.

</comment></comment><comment><USER39> Well, I politely declined the next stage when I heard it was a brain teaser round. I don't really seem to do well in brain teasers. I don't at all get a kick out of puzzles that aren't a means to an end. Does anybody else have that feeling?

<comment><USER4> >I heard it was a brain teaser round

A brain teaser? Like a puzzle? Or do you mean a coding interview?

Brain teasers haven't been asked in years AFAIK.

<comment><USER39> The term brain teaser was used explicitly. It would have been something data science/statistics related.

</comment></comment></comment><comment><USER40> It could actually be worse: at least the actual work environment seems to be decent enough, once you get in. I've explicitly turned down interviews ( _i.e._ I actually responded to the recruiter, rather than just letting the email sit in my inbox) with Amazon because of how much the day to day would suck, based on experiences of people I know.

<comment><USER22> What did you hear?

</comment></comment><comment><USER41> I interviewed with Google. While waiting for a response from my on-site interview I interviewed with another company and received an offer. I did not end up receiving an offer from Google but it did not make a difference as I already accepted the other job. It took Google almost a month after the on- site to get through their various levels of review.

</comment><comment><USER42> I interviewed with google, once. I enjoyed the process more than most here, though in some ways, that really just shows how badly I've been treated in other interviews.

It's not really an interview. This is the hardest thing for people outside our field to understand when they hear the word "interview". Our interviews are essentially exams, and google is probably the purest form of the interview as exam style of hiring. I studied data structures and algorithms, and took series of four one-hour oral whiteboard exams. I was treated politely and well, and had a nice lunch.

Really, they're exams. You might spend less than 5% of your time talking about the job, your background, your interest. You show up, they test you at the whiteboard.

I was a no hire. This is fine, but the secrecy around the exam and feedback, I think, reflects what's so wrong with this situation. There are, as I understand, actual numerical scores and notes about me and my performance in a database at google, along with images of the solutions I wrote on the whiteboard. However, I am not allowed to know anything about these scores or notes.

Imagine if you took the LSAT and applied to law schools, only to be rejected with the reason that your scores "weren't what we're looking for", but you aren't allowed to know what your score actually was! Or, perhaps, that you sat for your nursing or medical boards, and were told "you were strong in some areas and clearly studied hard, but we've decided not to allow you to become a physician or nurse at this time..."

I've written a bit about all this on HN before - our severe problem here is that we take exams, under conditions that many people view as very stressful, but with absolutely none of the rights that are often accorded a student. No clear study path, no information about who will be grading you or what that person's qualifications are, and - most importantly - no right to understand how you were graded or why you passed or failed.

This is what I don't want to participate in anymore. I'm nearing the point where I would rather leave the field than be a part of it.

That last part drives me especially nuts, because google is one of the companies constantly beating the drum about a "shortage" of developers. Do they not see how their own behavior contributes to this shortage?

<comment><AUTHOR> > However, I am not allowed to know anything about these scores or notes.

Are you in the UK? The Data Protection Act is very clear that you have the right to any information a company holds about you. All EU countries have a similar law.

If you are in the EU, you should be able to write to Google and demand the data they have. That might burn your bridges with them - but at least you'll know what they thought of you.

<comment><USER42> That's interesting. I'm in California, so not sure if this is an option.

I agree that this might burn bridges, so obviously that's something I'd need to reconsider. It also speaks volumes about the problems around technical interviews that simply asking how your performance on an exam was scored is a potentially career limiting act.

Keep in mind, this is a company that was involved in a clearly illegal wage- fixing scheme. I do think it's worth treading carefully here.

Tech has a long, long way to go.

</comment></comment></comment><comment><USER43> I absolutely hated my interview experience, but that did not turn me off completely. I stayed in touch with recruiters in case I decided it became a good time to move.

What put me off of Google was the declining adherence to "don't be evil" to the point of it almost becoming an ironic joke, with Eric's shady dealings with HRC's campaign being the final straw.

</comment><comment><USER44> Google's interview process is bureaucratic because Google is bureaucratic. It's just another enterprise once you get past all the 'ping-pong tables and beanbag chairs.' Employees ride buses, eat in cafeterias, and are permitted to use only approved programming languages. Company's of Google's economic size pretty much have to be.

One of which is Go. A fine language that meets Google's purposes but lacking map/reduce etc. I can only imagine the difference in perception if Oracle mandated something like that. Anyway, Google's hiring process has to select for people who will not be unhappy [metaphorically] programming in Go. Everybody ain't cut out for corporate life, and talent that doesn't thrive in Google's cultural straightjackets [every company has them] is better for being filtered out.

Google has the data to know who is likely to work out and who is not. The hiring process reflects that.

<comment><USER8> Kinda. Goggle, like every company, does what it does because it believes it has served it well.

Sure Google does TONS of cool stuff but very few things have been market successful. In short, Google makes a TON of money from ads. But it uses blindness and denial to view that as a cultural / company wide success. Take away ads and Google is just another fuckup struggling tech company.

<comment><USER30> So, you're saying the fact they've been making billions in profit isn't success?

<comment><USER8> No. I'm saying they have one cash cow and a shit load of mediocre products and complete failures. Take away that one Uber successful product and Google isn't all that exception. So making decisions based on an outlier is silly.

THAT is what I'm saying :)

</comment></comment></comment></comment><comment><USER45> I had read all the horror stories online about google interviews before going into one.

My interview had the interviewer and I on the phone simple enough. She had glanced and really had only glanced at my resume and I assume just noticed I had worked at 'x' which was good enough for her mind of recruiting. She didn't even look at any projects I had worked on or have any questions aimed towards previous work. I was good enough to her for the next stage of interviewing but I ended up wanting to just cut dealing with their interview shit out of my life at that point. Pathetic company that wants me to slave away memorizing from some book to pass an interview process that hires plebs that probably surf Facebook all day while attempting to hire college grads that may have interned at other tech companies.

</comment><comment><USER46> I've been reached out to by Google recruiters a few times over the past couple years (Facebook too, but I've heard there process isn't quite as time- consuming). I have never applied or interned there. I did get a Google Foobar invite and solved some of those problems but didn't choose to submit to Google. I went to an average mid-size school in the midwest, probably relatively unknown to them. I did some grad school which they seemed to notice; maybe they reach out to everyone who did CS grad school.

One thing I have noticed more than any other place is that the early stage / non-tech recruiters really spent time digging into my LinkedIn or Stack Overflow CV to ask specific questions, even in non-technical aspects like being an RA in college or study abroad. I wish everyone did this. It made me take them more serious as being interested in me and not just _people_.

I would really enjoy the opportunity to work for Google. I'm self-employed as an independent contractor with plenty of work. Most recently I turned the Google recruiter down after he sent a prep deck as I realized between prep, interviews, travel, etc, I'd be committing 100+ hours to the process. That's a lot of time and lost money, so despite having the desire to work there, at the end of the day I concluded it'd be a better use of time to opt-out than partially commit to an intensive process with very indefinite time bounds. The recruiter seemed surprised though — maybe people don't do this so much.

</comment><comment><USER47> There is a distinct possibility that a data-driven company like Google, having huge budgets for optimising their talent-finding machinery, is already aware about the holes in their hiring process. There might be no resounding reason for big-G to catch every talented engineer out there; they just need to catch enough of them which, considering their glamour, shouldn't be that difficult. Having the bar raised high, even if superficially so, they can continue to attract the _crème de la crème_

</comment><comment> awinter-py Important to distinguish btwn web silo hires and R&D hires. The fun jobs at G like driverless cars and ML are targeting relatively rare skillsets. The technical managers in those silos are likely mining their rolodex and visiting schools.

It's the boring stuff (web maintenance & integration) where the managers are burned out (or just bad managers) so they farm out hiring to recruiters.

Acquihire process is lighter-weight per-candidate and gets around the blind allocation point people are making here.

</comment><comment><USER48> An interesting data point. It seems that non satisfied potential employees are far more likely to vocalize their experience than satisfied ones.

The ones who castigate the process the most either failed the process or chose not to enter it, and ultimately failed to get an offer.

Whereas I know plenty of people who were able to get an offer with a minimally invasive interview process. Having somebody able to refer you in is key, skips a lot of the BS.

</comment><comment><USER49> I do want to add that, I've personally had a GREAT interview experience at Google (might be a exception based on the rest of the comments but I do want to put it out here).

I had been initially selected for the position of Sales Engineer. Over the course of the interviews (3 in total - over the course of 2 weeks), I felt like I knew what was going on, what stage I was in and what questions were asked (as in, the reasoning behind the questions - the stuff they wanted to test me on).

However, after the 3rd interview, I was told that I fit another position better and they wanted to interview me for that position instead (great position, but in SF which I was not interested in).

Over the course of the last 4 months, I've been to 100s of interview and I can safely say that _MY_ Google interview experience is in the top 10 (and if they are hiring in Ontario, Canada, I will definitely apply and hope to get interviewed again).

</comment><comment><USER50> I suspect that the hiring process varies quite a bit by role and group, and mostly people talk about the worst cases.

I did part of the process once (a few years ago) and it was very straightforward. Roughly it looked like: Initial call "are you interested" on Tuesday, someone else on Wednesday for 30 min. They arranged a flight & hotel that Sunday, I spent Monday interviewing and visiting with 5 groups if I recall correctly, flew home that night.

So just under a week from first contact to interviewing finished. We started talking positions but I decided to take another opportunity the following week and stopped the process, so I don't know how long that might have taken for approval or negotiation. However, they had seemed confident they could get it sorted out in a couple of weeks.

So just anectdata but doesn't feel at all like the dragged out versions people talk about.

<comment><USER51> yeah, people tend to complain loudly when it goes wrong (and it does happen). I had a very pleasant experience for what is worth.

</comment></comment><comment><USER52> I actually don't mind coding tests and whiteboard interviews, as I take the former as a challenge and I tend to do decently on the latter.

My issue with G interview process is how long it takes. Last time I was looking to change job (I was soon to be a father and wanted something more stable), I did a round of interviewing for a few companies. All did a phone interview and quickly followed up with an on site interview. In less than a week I had a few nice offers.

In the same time frame G came back, after the phone interview, with an offer to come to the office for the first of a few rounds of interviews. Although I was interested, I had to decline as I couldn't really justify the time, and instead took one of the other offers, which is a shame as I have quite a few ex-colleagues working there and I would love to join them.

</comment><comment><USER53> My friend was hired last week and somewhere near the end of the process the headhunters asked him for referrals. When he asked me if I'd be interested I said "Nope. Not wasting my time on the interviews" almost instinctively.

</comment><comment><USER54> When designing a hiring process one should consider the balance between false positives and false negatives, and the cost of the process. Obviously we all want to hire talent and reject duds. A cheap quick process runs the risk of false positives: hiring duds. An expensive lengthy process tying up lots of top staff will eliminate the false positives, but at cost. So to reduce cost filters are introduced: online tests, homework, phone calls rather than face to face. And the filters increase the risk of false negatives - rejecting real talent.

<comment><USER46> While this is an accurate description of Google's process, and it seems like they intentionally designed it this way (willingness to reject false negatives), I'm not sure what the point is that you're making about it.

<comment><USER54> My point is to explain the hard headed calculation behind a hiring process that has a lot of folk crying "not fair!"

</comment></comment></comment><comment><USER20> What part of the process have you guys found to take so long? I turned down an offer there 6 years ago, but it didn't take anywhere near 6 months, and from on-site to offer was about a week or two. I'm going through their process again now and based on current progress I expect the whole thing to wrap up in less than a month. It's not the fastest process I've seen, but it hasn't seemed worse than other large companies to me.

</comment><comment><USER8> If Goggle, FB, etc. were serious about diversity, they'd address this. The fact is, they don't want diversity. They want assimulation. The hiring process setting that tone.

They, being blind to their own blindness, keep asking: How can we get more diverse? How can we get X, Y and Z to join us?

It's the wrong question.

The better question is to gaze into the mirror and ask: What are WE doing that makes us SOOOOOOOO unappealing to X, Y and Z?

Nuff said.

</comment><comment><USER55> There's no question Google no longer attracts the best of the best talent. Hopefully that's not news to the folks at Google.

<comment><USER22> Where do you think the best of the best are going instead?

<comment><USER4> From what I can gather "best" go to companies with _even more stringent_ hiring bars and processes, like Airbnb, Quora, Dropbox, and the Quant firms.

</comment></comment></comment><comment><USER56> 2 billion lines of code in ONE repository? [https://www.wired.com/2015/09/google-2-billion-lines- codeand...](https://www.wired.com/2015/09/google-2-billion-lines-codeand-one- place/)

</comment><comment><USER57> don't worry...from what I've heard it's boring work anyway

</comment><comment><USER58> The recruitment process is ridiculous. If you can get through the Google gates, you can get a close enough salary with equity if that's your sort of thing and start in a week.

And you'll end up working somewhere that your voice counts and the company is not a high profile privacy and political target.

Might have to buy your own lunch though.

</comment><comment><USER59> Yes.

</comment><comment><USER60> Google's ethics put off talented applicants.</comment>


Google+ is Growing Like Crazy - <AUTHOR> https://plus.google.com/117388252776312694644/posts/1k85ZNPCu1A

<comment><USER2> Just so people are clear - this isn't THE Paul Allen. This Paul Allen is a Utah-based entrepreneur.

I'm sure that's obvious to most here, but I thought it was worth pointing out.

<comment><USER3> To be honest, I was first a little excited when I saw the headline, but I realized it was a different person when I saw the profile picture. The title of the post is a bit confusing since I didn't know of the Utah-based Paul Allen.

</comment></comment><comment><USER4> My surname is so rare that by United States government policy it does not show up on federal lists of surnames by frequency.

<http://www.census.gov/genealogy/names/dist.all.last>

I am on Google+.

A New York Times article

<http://www.nytimes.com/2007/11/17/us/17surnames.html>

establishes some context on the frequency of various surnames in the United States. English surnames are predominant, but Spanish surnames are gaining relative frequency.

P.S. Responding to another comment here, surely as more companies get into social networking, and social networking becomes a growing share of all Internet activity, third-party organizations will have to agree on standardized methodologies for estimating users of each service, to guide advertisers and investors, and to answer the questions of journalists. For the moment, I notice that Google+ has already achieved a status previously achieved for me by HN and by Facebook--I tend to keep a tab open to it at all times while I am browsing the Web.

</comment><comment><USER5> Another problem with G+: it's not happy that people have non-GMail email addresses. Let's say I have my friend John Smith firstname.lastname@example.com in a circle. G+ keeps asking me if I want to add him still. Why? Because in my GMail, I have also emailed him at firstname.lastname@example.com. There's no way for me to tell it that these are the same person.

So I think G+ may be double-counting a significant number of users.

<comment> X-Istence I have a lot of people with multiple email addresses, and as long as they are merged into a single contact Google+ no longer asks me to add them to a circle...

<comment><USER6> Downvote accident on my mobile. Sorry, someone get him that point back, please. Thanks in advance.

</comment></comment></comment><comment><USER7> Buzz had a similar opening <http://goo.gl/kA0pH> Such measures are meaningless because no effort is required to join for existing G users. Lets wait for Facebook or Twitter conversion rates to come out before breaking out the Crystal

<comment><USER8> You still need an invite and then walk through the sign up process, even if you already have a Google account. Buzz was just dropped on all Gmail users out of nowhere.

</comment></comment><comment><USER9> The methodology offered in the comments, of googling for [http://www.google.ca/search?hl=en&biw=1366&bih=653&#...</a> and taking the number of results returned for the number of users, seems more direct. Currently that returns about 6.5 million users, which is in the same ballpark.

<comment><USER10> I see about 2.8 million results from that query, but I'm not surprised the number changes a lot. The result counts are a very rough approximation calculated on the fly, and shouldn't be relied on for more than order-of- magnitude estimates.

The last name method is precise, but of questionable accuracy; the result count is probably more accurate, but very imprecise. Take your pick :).

<comment><USER9> That's interesting; if I anonymize by searching through Google Sharing, I also get 2.8 million results. Searching from my own IP address (though without being logged in) still gives 6.5 million.

<comment><USER11> I think that they are reorganizing the results based on if you are signed in with an account that has plus or not. There was someone who posted that their Google+ was "already" in the top 10 results and twitter wasn't even shown, but it was only true if you were logged in.

Hopefully they aren't doing something too drastic; there's allegedly already an ongoing antitrust investigation about how google orders its search results.

<comment><USER9> Maybe, but it's worth noting that I wasn't signed in, and don't have a G+ account, yet.

</comment></comment></comment></comment></comment><comment><USER12> Great, but I can't use it because those who pay money for Google Apps for Domains are exluded from having a profile. No, I don't know why either.

</comment><comment><USER13> I think calling G+ to be growing like crazy is misleading. Gmail itself has about 200 mio. users - migrating those users to a G+ account shouldnt be that difficult. What's really gonna be interesting is whether G+ will be capable of attracting new users, which are not yet part of google's 'services cloud'.

<comment><USER14> True, but I also think it will be interesting to see whether the users that get a Google+ account actually use it. I use Twitter for purpose-less tech/business opinions. I use Facebook rarely to talk to my brother and sister. I use Skype for work conversations. I don't yet see people using this enough for me to want to move to it.

edit; If they created some kind of BBM-type android service that sat on top of Google+ I think it would make me switch my SMS usage because I have a lot of friends that use Android phones...

<comment><USER15> _BBM-type android service_

You've described Huddle[1], part of the Google+ app for Android.

 _"Huddle lets you send super-fast messages to the people you care about most."_

Presumably, Huddle will be part of the Google+ app on other platforms, too.

[1] [https://market.android.com/details?id=com.google.android.app...](https://market.android.com/details?id=com.google.android.apps.plus)

</comment></comment></comment><comment><USER16> Whether Google+ is really growing like crazy or not, it appears that there is definitely a place for a new social network outside of facebook. And on that note could not help think that Apple probably missed a great opportunity with Ping.

<comment><USER17> And I'm glad they did. Judging from Apple's business model, it would have been yet another closed off, keep your data social network. I've been dying for an open network like Google+, and I think things played out quite well.

<comment><USER18> What's open about Google+? You can delete your account and download your data from Facebook as well; you can also write third party applications that read and write from/to Facebook, unlike Google+.

<comment><USER17> Google allows you to export your data through their "Google Takeout" service. This includes your contacts and circles, unlike facebook, who is now pushing harder than ever to keep your contacts in Facebook.

<comment><USER18> facebook.com -> Account settings -> Security -> 'Click here to download a copy of the data you've put on Facebook.'

<comment><USER19> Right. Export everything but internet contact info...the most useful parts they keep locked up. That button does not export email addresses. Fake export.

<comment><USER18> I'll let Google explain the _exact same product decision_ for their social network Orkut in 2009:

"Mass exportation of email is not standard on most social networks — when a user friends someone they don't then expect that person to be easily able to send that contact information to a third party along with hundreds of other addresses with just one click. In order to protect user privacy, we now exclude email addresses from the CSV export file."

[http://techcrunch.com/2009/10/26/orkut-slows-hemorraging- to-...](http://techcrunch.com/2009/10/26/orkut-slows-hemorraging-to-facebook- by-making-friend-export-tool-nearly-useless/)

They're right. Programmatic export of friends' email addresses is too ripe for abuse in the world we live in.

</comment></comment></comment></comment></comment></comment></comment><comment><AUTHOR> // in 1 hour I found 1 million users, so I guess is more than 4.5 millions

</comment><comment><USER20> where are all these people getting their invites? Dropping hints with my Google contacts hasn't worked...

<comment><USER21> Invites have been open all day. I'll invite you if you don't mind being disconnected entirely from the social graph. Please add a way to contact you, or a link to a way to contact you, to your HN profile.

<comment><USER20> Thanks mate : ) Gmail added to my HN profile

</comment></comment></comment><comment><USER22> Google Buzz also had "tens of millions" of people: <http://tinyurl.com/64fhwdq>

<comment><USER23> It was kind of forced to gmail users though.</comment></comment>


Ask HN: What's the overhead of forking and maintaining an open-source project? - <AUTHOR> If we create an internal fork of a popular open-source project, what maintenance overhead are we looking at? Particularly, when pulling security and optimization updates? <comment><USER2> Completely depends on how you change the code, from easy to very painful.

<comment><USER3> I'll add another attribute: popularity. I maintained a fork of a script that was rather complex, but had close to no feature requests and a handful of minor bugs. On the other hand, there is a ton of great research on burnout due to its prevalence.

One of the maintainers of some great projects wrote about taking an "indefinite sabbatical" \- [https://arslan.io/2018/10/09/taking-an-indefinite- sabbatical...](https://arslan.io/2018/10/09/taking-an-indefinite-sabbatical- from-my-projects/). He gets at the commitment in more detail.

The most complete resource I've found, on the good and bad, is @nayafia's Awesome Maintainers: [https://github.com/nayafia/awesome- maintainers](https://github.com/nayafia/awesome-maintainers)</comment></comment>


Fastest hard drive ever? - <AUTHOR> http://www.i4u.com/article22595.html

<comment><USER2> depends how well this turns out to work:

[http://www.theregister.co.uk/2008/11/07/sandisk_extremeffs_d...](http://www.theregister.co.uk/2008/11/07/sandisk_extremeffs_dram_buffer/)</comment>


Ask HN: Can we write a programming language for biology? - <AUTHOR> I'm specifically talking about an abstracted language that compiles down to nucleic acids. I know projects like Cello exist to generate plasmids and genetic circuits, but do we need ML? Do we know any determiistic rules? <comment><USER2> The demon lurking in the corner here is the _a priori_ assumption that we know enough about nucleic acids to be confident in our knowledge of how they'll behave once compiled.

I.e., i write some code, hit F5, and yeast comes out the other side of the compiler-machine. How confident can I be while debugging that the changes in behavior between the compiled output (yeast) and my code are bugs versus as- yet-unknown behaviors of complex molecules bumping into each other in a very crowded bag of other complex molecules sitting in a dish somewhere? As of right now, and I posit, as a biological researcher, for a very long time to come, the answer is "A lot less than 100%". Simple stuff like gene-toggle switches [0] have been known and pretty much work since the late 90s, but scaling is deeply nonlinear.

This doesn't mean that synbio is useless, but it means that the error bars are a lot higher than they are when you're running code on printed circuits and can have a high degree of confidence that your computational substrate actually does what you think it does.

[0]: [https://www.nature.com/articles/35002131](https://www.nature.com/articles/35002131)

<comment><USER3> A great example of this is Green Fluorescent Protein (GFP), one of the most important and foundational fluorescent proteins for biology research.

The fluorescent molecule at the center is not actually a nucleic acid, but is formed several hours after the protein has folded after a secondary reaction between some of the atoms at the center of the protein find a lower energy state. This seems to me (not a protein engineer) to be virtually impossible to design a-priori.

<comment><USER4> Except this exact thing was accomplished and published a few months ago [1, 2]. The Baker lab at the University of Washington designed a synthetic fluorescent protein, de novo.

[1] Meta-Meta-Article: [https://www.bakerlab.org/index.php/2019/01/02/nature- article...](https://www.bakerlab.org/index.php/2019/01/02/nature-article-ipd- work-voted-2018-readers-choice/)

[2] Actual paper: [https://www.nature.com/articles/s41586-018-0509-0](https://www.nature.com/articles/s41586-018-0509-0)

<comment><USER5> eh, it still took ~56 real-world attempts to get two functional designs. That's not even quantifying how strongly they fluoresce, and other qualitative/quantitative aspects (eg, how good of a GFP were these proteins). It's very impressive, and the Baker lab has done amazing stuff, but we are a long ways off from rational design.

From the paper: "Synthetic genes encoding the 56 designs were obtained and the proteins were expressed in E. coli. Thirty-eight of the proteins were wellexpressed and soluble; SEC and far-ultraviolet CD spectroscopy showed that 20 were monomeric β-sheet proteins (Supplementary Table 3). Four of the oligomer-forming designs became monomeric upon incorporation of a disulfide bond between the N-terminal 3–10 helix and the barrel β-strands. The crystal structure of one of the monomeric designs (b10) was solved to 2.1 Å, and was found to be very close to the design model (0.57 Å backbone r.m.s.d., Fig. 3c)."

"Two of the 20 monomeric designs—b11 and b32—were found to activate DFHBI fluorescence by 12- and 8-fold with binding dissociation constants (KD) values of 12.8 and 49.8 μM, respectively (Extended Data Fig. 6f)"

</comment></comment></comment></comment><comment><USER6> You may be interested in the NSF-funded Molecular Programming Project -- [http://molecular-programming.org/](http://molecular-programming.org/). Projects listed there include "gro: the cell programming language" and "DNA origami" \-- designing synthetic DNA that folds together into recognizable 2D and 3D shapes.

I also encourage you to look at the Qian Lab. Lulu has created neural networks out of DNA -- [https://www.nature.com/articles/nature10262](https://www.nature.com/articles/nature10262). Her research is entirely about programming molecular systems -- [http://www.qianlab.caltech.edu/research.html](http://www.qianlab.caltech.edu/research.html).

I was fortunate enough to collaborate with Lulu and with Erik Winfree's DNA computation lab at Caltech a while back.

My work was about building switching circuits using DNA. We designed DNA sequences that would bind together probabilistically. Using these, we created "probabilistic switches" \-- analogous to Shannon's original on/off switches. Then, we used some earlier work of mine to design (and build!) circuits of "pswitches" that realize certain probability distributions.

We published an open-access paper last year here -- [https://www.pnas.org/content/115/5/903](https://www.pnas.org/content/115/5/903). I suggest looking at Figure 1 to get a good idea how it works.

</comment><comment><USER7> The semantics of such a language would the the primary challenge. If you want to be able to compile a statement like "implement a protein that cleaves proinsulin to produce insulin" there is SO much context that the real challenge is not in managing the compilation to ACTG, but the surrounding environment.

At what temperatures? In what pH range? In what species? With what condon bias? When should it be expressed? At what rate should it mutate? Do you want any other nearby 'functions' from mutation? Is this a membrane protein? Do you want restriction sites? Is this for insertion into a plasmid or for insertion directly into a genome? What bacterial cell line will you use to maintain the plasmid? If you are expressing the protein for purification what cell line or bacterial strain will you be amplifying? Do you want a single sequence that will work for all of these or are you willing to compile a different version for each combination? etc. etc. etc. The list goes on and on.

The sequence you compile to will depend on those environmental parameters and the semantics of that 'environmental ISA' will likely be highly specific for many high level descriptions. I imagine you could produce sequences that were more robust, but the simulation time required to generate and validate them would grow accordingly.

All of this not even mentioning the fact that you also absolutely must specify _all_ the things it should not do, such as cleave a bunch of other proteins, or bind non-specifically and form aggregates in the cytoplasm, etc. A language level list of defaults here would certainly be a requirement, and that means the space that you will be optimizing in is absolutely massive. I don't even want to imagine how slow it would be. Probably faster to synthesize a bunch of variants and test them all in real cells.

The simpler case of taking an NCBIGene identifier and smashing it into an Addgene plasmid identifier and setting codon biases and optimizing for expression is a much more manageable task, and would probably be a building block for the more complex version.

<comment><USER8> Do you have suggestions on learning the basics of all that you discussed here? I know nothing about it but it sounds fascinating.

<comment><USER9> If you search on "protein folding" you should be able to find some basics.

</comment></comment></comment><comment><USER10> That was my interest when I started my career, but didn't do much on it.

Bio-informatics deals with the stuff you mentioned in-silico. There're a whole bunch of libraries for many different languages, but I've not come across any specific language for bio-informatics.

You might find [https://youtu.be/8X69_42Mj-g](https://youtu.be/8X69_42Mj-g) interesting, they developed a DSL in common lisp to generate C++ code using LLVM.

<comment><AUTHOR> Hey thanks, I'll check out the video! That seems super cool

</comment></comment><comment><USER11> Microsoft Research Cambridge, has been doing this for a long while.

"It turns out that there are lots of similarities between modelling concurrent systems and biological systems. Just like a computer, biological systems perform information processing, which determines how they grow, reproduce and survive in a hostile environment. Understanding this biological information processing is key to our understanding of life itself.

It's probably easier to understand some of the output of this work – specifically the Stochastic Pi Machine, or SPiM as it's often referred to. SPiM is a programming language for designing and simulating models of biological processes. The language features a simple, graphical notation for modelling a range of biological systems – meaning a biologist does not have to write code to create a model, they just draw pictures.

You can think of SPiM as a visual programming language for biology. In addition, SPiM can be used to model large systems incrementally, by directly composing simpler models of subsystems. Historically, the field of biology has struggled with systems so complex they become unwieldy to analyse. The modular approach that is often used in computer programming is directly applicable to this challenge."

[https://www.microsoft.com/en-us/research/group/biological- co...](https://www.microsoft.com/en-us/research/group/biological-computation/)

[http://research.microsoft.com/en- us/projects/spim/](http://research.microsoft.com/en-us/projects/spim/)

</comment><comment><USER12> Read this with an open mind: consider a dialect of Lisp. There is the saying "Lisp is not the language that will solve your problem, but rather, Lisp is the language that will allow you to create the language that will solve your problem." Perhaps what you need is a biology DSL. Lisp is excellent for creating DSLs.

<comment><AUTHOR> This is a really interesting perspective, another HNer said something similar. I'll spend some time noodling on this.

<comment><USER13> There is already a complete lisp tool being implemented, aiming to take advantage of C++ libraries called Clasp. You can also take a look to some major Clisp/scheme libraries like biolisp (i think it's the name). I'd never make a group project in common lisp if this project do not involve either a finite-state machine or a DSL (rewriting a prolog interpretor in lisp is a breeze), and in this case, the language fits perfectly imho.

</comment></comment></comment><comment><USER14> Yes, that's possible and a subject of active research. Have a look at Luca Cardelli's website [1]. He's probably the leading researcher in this field. He's got quite a few talks online e.g. [2].

[1] [http://lucacardelli.name/](http://lucacardelli.name/)

[2] [https://www.youtube.com/watch?v=o8q7kFeGUTM](https://www.youtube.com/watch?v=o8q7kFeGUTM)

<comment><AUTHOR> Awesome, I hadn't come across Luca Cardelli's work before, I'll check this out! Thank you :)

</comment></comment><comment><USER15> Computer programming languages were developed to overcome technical challenges when people had a very hard time writing pure 0s and 1s to code CPU instructions.

They knew what those instructions will do and they had 100% certainty about it.

This is not the case in biology, however. People still struggle to understand how proteins interact on a molecular level.

Few years ago I took part in a project that aimed to engineer a new, synthetic metabolic pathway in yeast. A key enzyme in this pathway had to be introduced from an exotic bacteria. But no matter how much we tried, the enzyme worked very poorly (2 order of magnitude slower) when introduced to cerevisiae.

The problems we have in biology today aren't technical, they are still fundamental... Creating a programming language dedicated for wiring genetic circuits is nice, but won't be a game changer.

</comment><comment><USER16> Does it have to be nucleic acids? You can probably get a dataflow-like language using concentrations of various enzymes and substrates. And there are pre-existing models for molecular pathways that may help figure out the "key" for such a code. (In fact, IIRC analysis of metabolite concentration variation tends to be modeled using systems of differential equations, so you could use neural nets to find optimal input states for simple or well characterized networks.)

There are some problems with using nucleic acids, chief among which is that the central dogma of molecular biology isn't nearly as true (or as central) as we used to think. Don't know as much about RNA -- there certainly are RNA "machines" where the nucleic acid itself has a function and maybe those could be coded for specific functionality. RNA isn't as stable though (because it's single stranded and RNAses are everywhere) so it sounds hard to deal with experimentally, but I'm no expert.

</comment><comment><USER17> The closest thing to this is probably DNA origami for nanoscale structures.

Beyond that, were not quite at the place where we can compute desired phenotype -> genetic code, except for when single enzymatic reactions are all you are doing. Going bigger requires understanding the nonlinear complexities of the system in much deeper detail.

<comment><USER4> We can and do go from phenotype -> genetic code as long as the phenotypic ask is something we have some familiarity with. There are enough examples out there that even though the toolbox is still small, there's plenty of new things we can rationally design - even if our success rate is not 100%.

Transcription Factor + GFP -> green transcription factor -> codon-optimized plasmid

Membrane tag + light-activated conformational change + cytoskeleton -> optogenetic mechanotransduction

Small-molecule-activated degradation domain + transcription factor -> chemically-induced genetic switch.

And though there's still a bit of trial and error to debug which/how those components go together, it's a common enough thing to be reasonably accessible.

</comment></comment><comment><USER4> We do this at Serotiny [1]. And others are working on this as well for different specific purposes. We use some very basic ML (the data is very sparse, wide, but any hit above a low baseline is _very_ valuable).

The curious part, from our perspective is that biology has massive surface area - and the surface area is 3D. It not only scales between species/functions, but it also scales up and down, from atoms to organs. And the expertise/abstraction layers that work at one scale become complicated if you try too hard to account for all variation at a different scale. HIV's genome is a backwards, upside-down, mirrored, fugue of an engineering design that uses exotic molecules, exotic regulation, exotic proteins, and exotic physics. We're starting at a different place, just trying to write very simple scales.

In our case, we've chosen a single size scale to work with - proteins, but are wide enough to look across every species & discipline to understand those proteins as common tools. We compile all of our designs for a particular function that we're interested in, down to DNA, literally. And finding the niche where we do not have to deal with all of the DNA-regulation, or cellular regulation, or tissue synthesis, etc. allows us to expand and build in complexity at the protein level - while keeping other parts of biology constant. And that also allows us to interact and work with others who are working at different scales.

And there are others that build in complexity at other biological levels (gene regulation, pathway flux, etc.). Companies like Asimov [2] are involved in similar work at some of those abstraction layers. The open-source design language, SBOL is an attempt to standardize the DNA layer [3]. And this contributes to the challenge in that a _lot_ of people/companies/labs have projects to build an abstraction layer that compiles down to DNA - but they might be talking past each other and be doing separate projects.

We've built an entire API of 'high-level' commands at an abstraction layer above DNA, where the output compiles down to literally, a JSON file specifying the DNA sequence to be manufactured by a 3rd party, as well as human-level citations to enable turning the new designs into intellectual property.

There is still a LOT of data missing, and there's a lot of empirical work to do - and you need to keep your compiling system constant enough that when you make changes at your abstraction layer you know that when you hit a roadblock you know it's because of a change you made, and not just a bug in the system.

[1] [https://serotiny.bio](https://serotiny.bio)

[2] [https://www.asimov.io/](https://www.asimov.io/)

[3] [http://sbolstandard.org/](http://sbolstandard.org/)

<comment><AUTHOR> Wow very cool. I'm actually a graduate student at Harvard getting my master's in biology and CS, so this is right up my alley. I'm going to dive deeper into Serotiny and check out some of the awesome work you guys are doing. Do you offer internships for folks like me?

I'd heard about Asimov from their original work on Cello at MIT, but SBOL is news to me. I'll check it out as well.

It sounds like this space is becoming pretty competitive, which is interesting.

<comment><USER4> I think the fun part is that it's not necessarily super competitive, yet. A lot of these tools are still complementary. But they're also not quite integrated yet either.

Always looking for good work. The field _is_ growing rapidly right now. You've got a good combination of talents to help.

</comment></comment></comment><comment><USER18> Vaguely related but check out [http://ceqea.sourceforge.net/](http://ceqea.sourceforge.net/), paper: [https://arxiv.org/abs/1811.02478](https://arxiv.org/abs/1811.02478)

</comment><comment><USER19> This is a very interesting area of research, which I'm personally fascinated by. There are several in active development.

Check out:

[https://kappalanguage.org/](https://kappalanguage.org/)

For one example.

</comment><comment><USER20> There's this.

[http://www.cs.cmu.edu/~phoenix/nsc1/paper/3-1.pdf](http://www.cs.cmu.edu/~phoenix/nsc1/paper/3-1.pdf)

</comment><comment><USER21> I know this might be a bit off-topic, but what is the current de facto standard either open-source or paid for drug design/discovery?

<comment><AUTHOR> OP here, the only open source drug discovery library/framework I've seen is DeepChem [https://github.com/deepchem/deepchem](https://github.com/deepchem/deepchem)

</comment></comment><comment><USER22> Another question is: could we beat (progress in) Quantum Computing by exploiting massive parallelism in biological computing?

<comment><AUTHOR> I'm highly interested in this, and in the capacity of biocomputing in general!

</comment></comment><comment><USER23> you are thinking the wrong way...its the embryology sequence of genes that turn on and off combined with dna from other organelles such as the mitochondria

not one of the end products nucleic acid by itself...this is why creating a dinosaur from blood, etc is such a fictional dream

</comment><comment><USER24> there's this language called gro that i'm hoping to look into when i get some time - [http://depts.washington.edu/soslab/gro/](http://depts.washington.edu/soslab/gro/)

</comment><comment><USER25> Just don't code an AI in it...

</comment><comment><USER26> Despite an oft-cited testimonial to the contrary, the Word was nowhere to be found in the Beginning.

Sure you could device something to take written instructions and produce peptides according to it, but it won't be a "programming language for Biology".

<comment><USER27> Is the genome not the programming language of God, and the junk DNA his inline comments?

<comment><USER26> If so, it is fit only for Him, and it behooves us not to try to write in it.

"Language" and "code" are shitty metaphors for what DNA does in living organisms, and it misses almost everything about what's needed to go from the molecule complex to the phenotype. Divine beings (and possibly Real Programmers, who mastered the use and internals of C-x M-c M-butterfly [[https://xkcd.com/378/]](https://xkcd.com/378/\])) may get away with doing their work despite thinking about it that way. Everyone else need not apply.

Incidentally a good deal of the "junk" DNA turns out not to be.</comment></comment></comment>


Show HN: Elevator party – An interactive small talk experience - <AUTHOR> https://elevatorparty.chat/ <comment><AUTHOR> Hello HN,

This is a tiny little thing that me and a frequent collaborator [0] wanted to express in these challenging times. What if people miss something as awkward and forgettable as elevator small talk?

Right now, there are virtual places where we can meet, collaborate, do yoga, talk about books, watch content together, and rave. This virtual space gives you an analog that is a little more from the daily _inbetween_ times.

After long days of video calls at work, we ended up doing more video calls each evening to get this wrapped up. Overall this small concept took four weeks to finish. In the process I primarily learned that there have been notches in screens for a few years now.

The whole thing is built with Clojure and ClojureScript. And largely leveraged Sente [1], a wonderful front+back end WebSocket story. The characters are customized from the amazing Open Peeps library [2]. And there is some more info in the (?) on the website for the curious.

I am curious about what this community thinks about little, possibly zen, distractions like this?

[0]: [https://ameliedinh.com/](https://ameliedinh.com/)

[1]: [https://github.com/ptaoussanis/sente](https://github.com/ptaoussanis/sente)

[2]: [https://www.openpeeps.com/](https://www.openpeeps.com/)

<comment><USER2> Love the idea, couple ideas.

1\. Restrict it to 3-4 people max in each elevator. 2\. Add in audio and close the room in 1 minute.

<comment><AUTHOR> Thanks!

Audio is definitely something we want. Had a nice elevator bell lined up! Will try to get that added sometime this week.

re #1, it would definitely be more usable with higher visitor traffic. One of our goals was to let people be in the same elevator if they send it to their friends, at the moment that is done by only having one elevator haha. Not ideal!

</comment></comment></comment><comment><USER3> I like things like this because they're different. It feels like the sort of silly website you'd stumble across in the early 2000s. But I agree with some of the other posters that the limitation of choosing from canned phrases makes it feel boring almost immediately.

Something to consider: maybe being able to string random small-talk related words or phrases together, ala magnetic poetry[0], would result in more interesting chatter.

[0]: [https://jayisgames.com/review/farragomate.php](https://jayisgames.com/review/farragomate.php)

</comment><comment><USER4> Nice idea.

The fact that some of the people have no eyes and a weird sort of eye thing for a nose is confusing.

Also there are too many people in the elevator for the necessary awkward silence between comments.

After a certain amount of small talk you should get awarded the opportunity to actually choose what to say. Thats kindof how it works IRL.

<comment><AUTHOR> It's definitely receiving slightly more traffic than usual right now ;)

</comment></comment><comment><USER5> I came expecting a web app showcasing Smalltalk, the language. Boy was I confused for a second haha.

</comment><comment><USER6> I really don't understand.

Are other people in the elevator operated by other actual users online, or are they randomly generated? Honestly, it's indistinguishable from random.

Are you supposed to be "conversing" with the other thought bubbles that appear? Using the 10 phrases you're allowed to use, which because they're meaningless you cannot tell whether someone is actually responding to your input or just a bot putting up phrases?

The sentiment is nice, but I have to say, 4 weeks to build this seems... unfortunate.

<comment><USER7> my understanding is that "indistinguishable from random" and "meaningless ... bot putting up phrases" is the critique of small talk that this art piece is trying to get at?

<comment><USER6> Yes that's true -- but if the authors of this spent 4 weeks coding up something to allow people to input phrases and have them appear to others dynamically and have them "respond" (all of the complexity of a chat interface and backend), only to not be able to tell the difference between that and random non-interactive output... what was the point of all that work?

Maybe I'm not getting something about the UI that is obvious.

<comment><AUTHOR> It was definitely a challenge to communicate that everyone was a human in there. (As far as humans can be trusted ;)

Later in the design we added some details to hopefully get that across to as many people as possible. The biggest being "connect to other humans" that bounces in over the elevator button before you can call it. The others are maybe a bit too tucked away in the info (?) area.

I think with the amount of traffic in the last 12hrs everyone does start to look like a bot though!

<comment><USER6> I mean, thanks for your effort, but I still am puzzled as to the purpose of making this a complex interactive conversation platform... when the phrases are not able to convey a conversation and it appears random to the participants. It's a lot of behind-the-scenes work / infrastructure for something that is... not useful as a conversational tool.

</comment></comment></comment></comment></comment><comment><USER8> Fun, it would be nice to have less people per room as right now it's very crowded (on mobile)

<comment><AUTHOR> It's actually a 'single shard' universe. (Sorry bad EVE joke) But yes, its a bit stuffy in there right now!

<comment><USER9> What's that smell?

(Seriously, this is adorable. Great work!)

<comment><AUTHOR> Thank you! Really glad you liked it!

</comment></comment></comment></comment><comment><USER10> This is pretty cool, I'd love to see similar things like this.

<comment><USER11> why would you like to see more?

tbh I don't get the point of this...it's boring and useless(for me)... it's nice project for learning or demonstrating the technical aspects behind it...

</comment></comment><comment><USER12> Neat idea, good execution.</comment>


How to build a SaaS with $0 - jonathan-kosgei https://hackernoon.com/how-to-build-a-saas-with-0-fed2341078c8 <comment><AUTHOR> I guess there are no free design services as the author lists purchasing a theme or paying for manypixels.co's unlimited design service. I thought there are some free logo services, can anyone here recommend them (if any)?

<comment><USER2> Not free, but I've had good luck with artists on Fiverr. Granted, they're not always unique, but quick and cheap.

<comment> jonathan-kosgei Good point

</comment></comment></comment><comment><USER3> This isn't just how to do stuff for 0$, many of those companies seem to deliver great products to grow in! :)

<comment> jonathan-kosgei Thanks! They do! And the best part is by the time you start getting charged it's because you've grown and are probably already making $$. Enough at least for the business to pay it's own expenses :)</comment></comment>


Create Smart Contracts and Insert Content Securely in Blockchain with Blockbook - <AUTHOR> https://www.blockbook.co <comment><USER2> what is a public notary?</comment>


Ask HN: How do I grow my startup - <AUTHOR> Hello,
My name is Jason Gray and I am CEO/Founder of Chrip. Chrip is a mobile first app that allows people to save their spare change to help them finance their next trip. I have a prototype built and on my landing page.
I am currently looking to build a team and even a cofounder. I recently left my job to turn my vision into a reality. If anyone is interested or if you have any advice on how to grow I will gladly appreciate it.
Website: www.chrip.co Email: firstname.lastname@example.com
Thank you! <comment><USER2> Advice on growing: Get customers everything springs from this, cofounder/investors

The easiest way to do this is to do digital ads on Facebook and twitter and get installs. With installs you can count how many people are staying in your app and create a story to sell cofounders.

Also when you are saying who you are, mention any great previous things you have done. (Went to a great school? Worked at a great place?) That serves as credibility so people know you are worth talking with and working with. This might be superficial but it works.

</comment><comment><USER3> Hey, Cool project and its nice that you are starting the journey and sharing it with us! How are you going to access the transactions and how do you define change in an credit/debit card transaction scenario?</comment>


Twin Prime – Fast Mobile Apps. Everywhere - <AUTHOR> http://www.twinprime.com/ <comment><USER2> How does this work? Seems like snake oil to me.</comment>


Free Django book  - <AUTHOR> http://www.djangobook.com/ <comment><USER2> Nice! although my one qualm with Django is that it relies to heavily on regular expressions for URL requests(Correct me if I'm wrong please!) After reading why the guys at Reddit are moving over to Django, it made me curious as to why they are doing it. Which lead me to learn Python and Django :-)

Yet 1yr experience = Ruby and 1yr experience = Rails doesn't exactly equate to brilliance either. Currently I'm having some trouble wrapping my mind around Python :-( and find myself going back to Ruby to try to solve some problem that I can't hack in Python(newb :P)

<comment><AUTHOR> The regular expressions approach to URL management is a good one IMO. It's a clean way of managing dynamic urls without using querystring parameters.

</comment></comment><comment><USER3> It's their official documentation in a way -- sorta. I had some minor gripes with it while reading through, but for the most part it is very good.

<comment><AUTHOR> I'm brand new to Python/Django so I suspect it will be a great way to get an overview that I might not be able to piece together so quickly otherwise.

<comment><USER4> I'd recommend this tutorial as a starting point then: <http://www.djangoproject.com/documentation/tutorial01/>

It's the official tutorial and is very fast, simple, and introduces a very good portion of Django.

</comment></comment></comment><comment><AUTHOR> Don't know if it's been posted here before but I thought I would share it seeing as there's been a lot of Django/RoR comparison these days.</comment>


Ask HN: do you use ER diagrams or UML? - <AUTHOR> Hi,
when you design a database for a startup that is maybe used by 2-3 developers, do you use ER diagrams and in detail like logical,physical etc or UML
or
do you try to be quick and draw a design so that the rest know approximately whats going on and then go with viewing the sql schema directly from mysql workbench or whatever. <comment><USER2> I generally do high level domain modeling first to get some ideas of the overall picture. I then tackle each components separately based on their complexity. Like ER for data, sequence for communication, class for structure. Overall, nothing too details since it's most likely will get change at some points but it is a good starting place. If you are interested take a look at an app I made for Android and IOS called DrawExpress. I made it to help me with drawing UML and ER quickly. It based mostly on gestures for effeciency although may take time to get use to that style. You can check out the free lite version first

[https://play.google.com/store/apps/details?id=com.drawexpres...](https://play.google.com/store/apps/details?id=com.drawexpress.lite) [https://itunes.apple.com/us/app/drawexpress-diagram- lite/id6...](https://itunes.apple.com/us/app/drawexpress-diagram- lite/id687459234?ls=1&mt=8)

</comment><comment><USER3> I use [http://www.w3.org/2001/sw/wiki/Protege](http://www.w3.org/2001/sw/wiki/Protege) to create a Base Ontology first. It can export to UML with the right tweaks and plugins.

</comment><comment><USER4> I wrote a book on UML years ago but now, the only type of diagram I use at all frequently is sequence diagrams.

<comment> alok-g Interesting. Could you explain more about why you do not find UML as useful? Do you use some alternative now for design and documentation?

</comment></comment><comment><USER5> I never find class diagrams so useful, especially now that I use a framework (Django).

ER diagrams on the other hand work really well to model the data for the database, and maps pretty easily back to SQL code.

</comment><comment><USER6> I'm an ERD user from before there was UML so ERD for me. I suspect lots of the old timers (40+) are that way.</comment>