Some fun stats from the Google interview thread ↓
It took the total of 5 recruiters to arrange the interview. Yep, literally, 5 (!) different people talked to me so far.

Time-wise it took ~30 days
This was the third time I’m applying to Google, still, they make me go through the screening call.

Why? Screening is supposed to be a very rough filter to check the lowest bar. It’s fine once, but why force it every year on the people you know have already passed it?
I chose Java as my main language.

3 out of 3 technical interviewers didn’t know about `var` keyword (available since Java 10). They thought I accidentally switched to Kotlin.

1 out of 1 didn’t know about records (in preview since Java 14)
I know, it’s a strange feeling that Java is a language that is actively changing now and you have to follow the updates to stay in the loop. But it is!
For an algorithmic problem, I managed to come up with a solution so simple even the interviewer was surprised.

He said that most of the people have FP background and come up with a much more complex design.
System design interviewer didn’t know about Consistent Hashing, despite asking me a textbook problem it’s used for.

Well, no matter what the outcome will be, I’m happy I had a chance to teach Google some Computer Science
3 out of 5 interviewers were Russian-speaking. Did they do that on purpose? Would be nice if they do (I’m also Russian)

One interviewer went to the same uni I went to, albeit 10 years later!
Overall, no matter the outcome, it was a fun day, talking to smart people who share your passion for the programming, and solving challenging problems. 10/10 would do again.

That’s it for now, will continue when they come back with the feedback.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Niki Tonsky

Niki Tonsky Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @nikitonsky

30 Jul
Hardest things is CS, a thread:

1. Cache invalidation
2. Naming things
3. Off-by-one errors
4. “Back” button
5. Smooth scroll
6. Remembering scroll position
7. Smooth web animations
8. Sound in a video conference
9. Email layout
10. Aligning text next to the icon

[1/4]
11. File paths with spaces
12. Remembering “Remember me”
13. Not writing yet another package manager
14. Logging in Java
15. Managing dependencies
16. Building programs
17. Text selection in PDF
18. Estimating time in progress bars
19. Not stealing focus

[2/4]
20. Writing to a file (reliably)
21. Parsing XML (reliably)
22. Switching video modes in Windows
23. Looking for the path where Visual Studio was installed
24. Remembering which monitor window should open on
25. Syncing files in iCloud
26. Smooth window resizing

[3/4]
Read 4 tweets
24 Mar
Emoji are the biggest innovation in human communication since the invention of the letter 🅰️.

Curious how they work under the hood? 🧵👇
As you might know, all text inside computers is encoded with numbers. One letter—one number. The most popular encoding we use is called Unicode, with the two most popular variations called UTF-8 and UTF-16.
Unicode allocates 2²¹ (\~2 mil) characters called codepoints. Sorry, programmers, but it’s not a multiply of 8 🤷. Out of those 2 million, actually defined are \~150k characters.
Read 57 tweets
20 Feb
“Performance is a feature that enables using a tool in robust ways. When actions are instantaneous, users will use them more.“

“breaking backwards compatibility should be done rarely. [...] significant, clear benefits should exist and no reasonable way to maintain compatibility”
“The interface should be uncluttered, to the point, and consistent. Putting everything as a button, icon or tab can be as much of a detriment as having nothing visible. When many different things beg for the user’s attention, they start becoming noise.”
“[upside] to owning so much of our stack is that we can often tweak and fix things that are out of practical reach of other projects. We have no large open source projects we need to convince that our feature is worth the implementation. We can make that decision ourselves.”
Read 7 tweets
9 Dec 20
Вот вам мой тред по осознанному потреблению для программистов. Тред ↓
Старайтесь не заводить объектов, отвечающих только за одну функцию. Каждый объект должен выполнять хотя бы две-три функции, в идеале пять-шесть. Это поможет вам сократить количество необходимых объектов.
Вместо обновления библиотек на новые версии попробуйте обходиться теми, что у вас уже есть. Например, поставьте себе задачу не обновлять и не добавлять новых библиотек в проект в течение года.
Read 23 tweets
27 Mar 18
Very interesting case study in 5 parts when a man tries to implement a sudoku puzzle but got overwhelmed by TDD and OOP and haven’t got any tangible result except “board representation” ravimohan.blogspot.ru/2007/04/learni… (first five links)
I was ready to bet he’s just a junior getting familiar with Ruby but turned out he’s Ron Jeffries, one of the founders of eXtreme Programming. Here’s what he thinks of himself
What’s the takeout? Don’t get stuck in the design too much I guess. Whatever works, get to the meat as quick as you can, improve later if needed. Also: methodologies, TDD and OOP won’t replace thinking about the problem at hand
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(