office-336368_640

8 Secrets to Software Engineer Self Introduction

What is the most frequently asked question in coding interviews? It’s not string reverse problem, but can you introduce yourself? However, many people don’t know how to deliver a good software engineer self introduction.

In fact, it’s almost for sure that you will be asked this question in every coding interview and many time you have to answer this same question to multiple interviewers on the same day.

In this post, I will discuss tips and hacks about software engineer self introduction. And I’m going to make all the tips practical and actionable so that you’ll know exactly how to improve.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

2016-02-11-roman-drits-barnimages-003_small

Facebook Interview – Longest Substring Without Repeating Characters

This week, we’ll talk about question – longest substring without repeating characters.

If you are following our blog, you might notice that we start to provide coding solutions at the end of each question. At Gainlo, many people have the feeling that questions asked by Google/Facebook are much easier than they expected, but they still didn’t make it. The most common reason is that they failed to provide solid code in a short time.
(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

acoustic-guitar-336479_640

Uber Interview Questions – Delimiter Matching

We are going to discuss the delimiter matching problem in this week’s post. The question has recently been asked by Uber, however, which is only part of the reason we select this question.

One of the common misunderstandings is that coding interviews are extremely hard to companies like Uber, Google, Facebook etc. and most people failed because they couldn’t come up with any idea at all. However, it’s not the case. More than 70% of questions are quite fundamental and are focused on testing candidates’ understanding of basic data structures/algorithms.
(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

negativespace-22

Dropbox Interview – Design Hit Counter

It starts with a simple question – if you are building a website, how do you count the number of visitors for the past 1 minute?

“Design hit counter” problem has recently been asked by many companies including Dropbox and the question is harder than it seems to be. This week, we’ll uncover all the mysteries of the problem. A couple of topics are discussed including basic data structures design, various optimization, concurrency and distributed counter.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

94_min

Design eCommerce Website (Part II)

This is the second post of Design eCommerce Website series posts. If you haven’t read the first post, it’s better to check it first as we’ll continue our discussion here.

To briefly remind you what we have discussed in the previous post, we started with the data model design for an eCommerce website. Although relational database is the most common approach, we notice that NoSQL database like MongoDB provides a lot of advantages and flexibilities when building an eCommerce website. To scale the system, concurrency is one of the key factors to consider.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

restaurant-690569_640

Design eCommerce Website (Part I)

Over the past couple of weeks, a lot of people requested us to discuss eCommerce website. Not only has this topic been asked in quite a lot system design interviews, but also eCommerce websites are so popular today that a lot of techniques and researches are developed for it.

Before digging into this topic, it’s better to understand why design eCommerce website is popular in system design interviews. First of all, building an eCommerce website requires things like database design, system availability, concurrency consideration and so on so forth. All of them are extremely important in today’s distributed systems. In addition, everyone has used some eCommerce website like Amazon. If you are generally curious about surroundings, you should have already thought about this topic.
(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

navigation-1048294_640

Uber Interview Questions – Map Implementation

In this week’s coding interview question post, I’m going to analyze one of the best questions I’ve seen in recent interviews. As many people ask for the pseudo code in order to help them understand the algorithm, I will also include that in the post as well.

It’s worth to emphasize again that what’s truly important is not the final code/solution, it’s all about the analysis process and I’m going to teach you exactly how to come up with the right idea.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

leaves-691363_640

Design a Garbage Collection System (Part II)

This is the second post of Design a Garbage Collection System series. If haven’t read our first post, please go check it since we’ll continue our discussion from last time.

In our previous post, we’ve been talking about the basic concept of garbage collection, which is a system that automatically recycles unused memory in programming languages. What’s cool about garbage collection is quite obvious. It allows developers care less about memory management and write more robust code. On the flip side, it may affect the performance and provide less flexibility when working with memory.
(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

IMG_3832

How I Improved My Coding Speed In One Week

A lot of people are asking whether coding speed matters in coding interviews. The short answer is – yes, it’s extremely important.

Over the past, Gainlo interviewers have seen so many candidates who came up with the right solution quickly but failed to complete the code in the end. This phenomenon has become more and more common and that’s why we decided to talk about it this week.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More

leaves-691363_640

Design a Garbage Collection System (Part I)

Our system design interview series gets a lot of feedback in the past couple of months. I’m glad to know that our readers find it helpful.

One advice I always give is that don’t take these articles as standard answers. System design interview questions are usually open-ended and it’s all about analysis and communication. Any point in the discussion can go deeper based on interviewers’ preferences.

This week, the question is slightly different as it’s a little low-level but at the same times quite useful – garbage collection system. Not only is garbage collection system widely used in many modern programming languages, the same idea can adapt to other areas as well.

(more…)

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Reddit

Read More