May  Tremblay

May Tremblay


In Memory databases internals for system design interviews

This video is about the Inmemory db or realtime db or Main memory databases, its importance, performance characteristics, design and use cases.


What is GEEK

Buddha Community

In Memory databases internals for system design interviews
Ruth  Nabimanya

Ruth Nabimanya


System Databases in SQL Server


In SSMS, we many of may noticed System Databases under the Database Folder. But how many of us knows its purpose?. In this article lets discuss about the System Databases in SQL Server.

System Database

Fig. 1 System Databases

There are five system databases, these databases are created while installing SQL Server.

  • Master
  • Model
  • MSDB
  • Tempdb
  • Resource
  • This database contains all the System level Information in SQL Server. The Information in form of Meta data.
  • Because of this master database, we are able to access the SQL Server (On premise SQL Server)
  • This database is used as a template for new databases.
  • Whenever a new database is created, initially a copy of model database is what created as new database.
  • This database is where a service called SQL Server Agent stores its data.
  • SQL server Agent is in charge of automation, which includes entities such as jobs, schedules, and alerts.
  • The Tempdb is where SQL Server stores temporary data such as work tables, sort space, row versioning information and etc.
  • User can create their own version of temporary tables and those are stored in Tempdb.
  • But this database is destroyed and recreated every time when we restart the instance of SQL Server.
  • The resource database is a hidden, read only database that holds the definitions of all system objects.
  • When we query system object in a database, they appear to reside in the sys schema of the local database, but in actually their definitions reside in the resource db.

#sql server #master system database #model system database #msdb system database #sql server system databases #ssms #system database #system databases in sql server #tempdb system database

Brain  Crist

Brain Crist


My System Design Interview Checklist in 8 Simple Steps

That dreaded system design interview. I remember the first system design question I was asked. “Design WhatsApp”, he said. I didn’t know where to start! I was a fresher. Data structures and algorithms were the only things I knew. I am sure you can guess how that interview went. Then after enough research, I made myself a checklist of components, of sorts, to navigate me through my next system design interviews. And I sh*t you not, it works!

So I’ll stop with the chit-chat and get right into it!

1. User Interface

First things first, how are the users interacting with your system? Is it via a mobile app or on a laptop or a smart TV? This gives us an indication of what kinds of limitations and hidden requirements we are dealing with. For example, in the case of a mobile user, we might have to handle fluctuating networks, for a smart TV and laptop users kind of a scenario we might have to support different file formats and different resolutions and aspect ratios.

#database #distributed-systems #system-design #software-engineering-interview #interview-tips #interview-prep #devops #software-architecture

Brain  Crist

Brain Crist


How to Choose the Right Database for your Requirements

Imagine — You’re in a system design interview and need to pick a database to store, let’s say, order-related data in an e-commerce system. Your data is structured and needs to be consistent, but your query pattern doesn’t match with a standard relational DB’s. You need your transactions to be isolated, and atomic and all things ACID… But OMG it needs to scale infinitely like Cassandra!! So how would you decide what storage solution to choose? Well, let’s see!

First of all, what kind of data are we working with? Is it records or file systems or audio/video content? And what kind of processing do we intend to do on that data? Do we need to search for something or run sophisticated analytics algorithms?

#database #distributed-systems #system-design #nosql #interview-prep #coding-interview #databases #data-science

Mikel  Okuneva

Mikel Okuneva


System Design Interview Tips

The system design interview provides the key signals that differentiate a tech lead from programmers. Here’s some tips may help you ace it.

Image for post

Image from Quora

Pre-Interview Preparation

When preparing, thinking about how to design a system that top-tier tech companies have(Google, Twitter, Amazon, Uber, etc).

Proactively picking some classic questions, like Twitter Feeds, Snapchat messaging, Dropbox file system, to exercise. Over-preparing and ensure you are familiar with these major scenarios.

“Drive the discussion from the beginning.”

Explore The Restraints

After the interviewer throwing out the question, like “Design a Load Balancer for Twitter”.

Do NOT rush to the solution.

The very first thing you need to do is to get clarity about the system’s requirements and constraints:

  • How many users we are talking about?
  • How many tweets sent per sec?
  • What are the latency requirements?
  • How are we going to store the data?
  • Clients are mobile or desktop?
  • Clients are Push or Pull model?
  • How many data centers we are talking about?

In reality, the quality of these exploring questions reflects the candidate’s experience level.

Complete Your Solution

Now that you have the clarity of the system’s requirements, continue to drive the discussion.

The next step is to write down the first version of a complete solution.

On a high level, a reasonable solution should include all the components that receive, process, and store the data. Specifically, we need to write down:

  • Al the components’ key responsibility(E2E)
  • Key data schemas
  • Key algorithms of processing data, like load balancing algorithm
  • How the system monitor and handle errors/exceptions

Then validate this solution with the interviewer, ensure the it satisfy the key business requirements. Sometimes it also involves a bit calculation to persuade the interviewer.


After having the 1st version solution nailed, the interview will usually go into the “Deep Dive” section. The interviewer will come up with a special requirement, and ask the candidate to adjust their design to ensure its system survive in this scenario.

For instances:

  • The QPS is very high
  • Read is 10x than write
  • Prioritize latency over accuracy
  • Ensure data security

There’s no one-fits-all answer at this stage. The interviewer really needs to leverage his/her experience and resolve it.

However, there’s one thing each candidate should keep in mind.

“Think in trade-offs”.

No matter what solution you propose, always write down its pros and cons. What makes it work and what to sacrifice to meet this goal. That’s the key signal of an experienced engineer.


Unlike the coding interview, there’re hundreds of ways a system design interview could go. But no matter what scenarios you’re in, I wish tips mentioned above could help you navigate to the ideal destination.

#software-development #system-design-project #system-design-interview #interview

Brain  Crist

Brain Crist


BEING HONEST an essential UX interview tip

In this article, I share what I think is one of the best tips when it comes to design interviews.

As a junior UX designer, I’ve been asked a few times by my peers: what is the most essential UX interview tip I have?

Well, to this question I have a very simple answer,** just be honest**… well, this might sound like a no brainer, but it seems to me that not many junior designers know about it or want to apply it.

I had the chance to speak with a few designers and I discovered that some tend towards being a little bit insincere when going through interviews for design positions. It’s normal to be intimidated when going through an interview process and you might want to act as if you have more experience than you have to secure the job.

Well, I’m here to suggest that that’s not the right approach. I fact, recruiters know in advance that as a junior designer you won’t have many years worth of experience so instead of being insincere it’s better to show up with an open mindset and being honest.

A mindset of learning and improving is always welcomed and valued in today’s world. Simple answers like “I might not know X because I’ve haven’t had the chance to get at it but I can learn it as I’m an avid Lerner” go a long way with recruiters.

Put yourself on your recruiter’s shoes, would you rather employ someone “that answers to 90% of the requirements’’ but doesn’t show a growth mindset, or would you employ someone “that answers to 70% of the requirements’’ but shows it’s the thirst for learning and improving?

That’s not to say that you’ll show up with no qualifications at all. You still have to have a certain level of expertise. “Don’t be the guy with 30hrs of experience using Sketch and 1hr of prototyping experience calling himself a UX designer”.

Some skills can be rapidly learned with just a little bit of discipline and will so don’t be afraid to answer with a no if you haven’t had experience with certain techniques due to lack of opportunity of doing so, for example. It’s always easier to learn something new than being perceived as untrustworthy because you said you were qualified to do something but you finally weren’t.

keep in mind that being sincere is always the way… not just during job interviews but in life. Anytime you’re being insincere to achieve something, most probably, the lie will end catching you back and having the opposite effect you wanted it to have.

Anyway, I’ll stop with my “life lessons” and I’ll wish you a very successful interview.

Hopefully, this little advice does help you.

#design-interview #job-interview #system-design-interview #job-interview-tips #ux-interview