Being an interviewer for BIEs/BAs in a FAANG company, I can absolutely vouch for the content of this video, well presented and gives a very good understanding on what to expect on a real SQL assessment. Keep up the good work! I really do enjoy watching your take on different topics :)
Wish there was a video like this one 2 years ago when I started interviewing! The SQL resources you listed are exactly what I discovered the hard way over many many months.
Gr8 Video ..! I learn the SQL but when I went to Interview the questions level was difficult I'm not able to solve those properly without hints. Some of the question was related to how you handle 15 million transaction records memory optimization etc. Do you think codewars or any other platform practice is sufficient. Becoz in the interview they ask how you handle large scale data so how I can get hands on such cases..?
Can you also talk more about Code Efficiency and High Quality Codes in SQL? For programming languages, there is time and space complexities but for SQL, I am not aware how to evaluate efficiency and higher quality of the code?
in SQL its harder to evaluate it "just based on code" as different flavours (MySQL, T-SQL, PostgreSQL, Oracle...) and sometimes even different versions of them have different inner workings of planner (the thing that decides how to execute the query on background). So generally you do optimizing query afterwards, not before.
The solution for the hard SQL was so tedious (using 2 partition by, 2 group by, 1 join). Since there can be many solutions to the same problem, how does someone talk about the pros and cons of 2 solutions? My guess is to discuss number/speed of operations (query plan), maintainability (how easily it can break), usefulness of subqueries (how easily they can be copy pasted from/to by other teammates/other problems). Have you any opinions /resources on such matters? (i mostly see only query plan discussions online but can't find qualitative discussions like the latter points)
Agree that hard SQL questions can be very involved. It’s helpful to break it down into smaller pieces and use command table expressions to make tmp tables www.postgresql.org/docs/9.4/queries-with.html. In terms of comparing 2 solutions - SQL questions are different from algorithm questions that are often asked in software engineering interviews which typically require complexity using big O notation. What you listed is definitely helpful for comparison but I rarely experienced any question on comparing different solutions in DS interviews. The most common ones are just ask you to provide a solution and the interviewer will evaluate you based on the quality of it, i.e. the aspects covered in the video - executable and no syntax error, clean and concise code, consider edge cases (e.g. using COALESCE when a value can be Null), optimized efficiency (e.g. using minimum number of joins)
Q: What's in a Real SQL Interview? A: Life, the Universe, and Everything! Q: You mean 42 !! A: Yes, but not normal 42, but SQL result | 42 | 1 rows selected Q: Hired
Thanks for sharing!! Could I ask you a question? I was just wondering in real life project, how do I know if my SQL query returned the right result since this is no answer like those sql practice tests have. Thanks!
I wish Emma see my comment...☺️ I have a question regarding the second sql question...why used two cte when calculations could have been done using single cte And. Retention= installs.first_date+1/installs.counts
SQL is Analyst tool, Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life. If company asking a SQL on the interview, that mean this company looking for Analyst and they doesn't care about your talent or scientific approach, and this is a biggest problems in hiring process in this days.
@@jeoffleonora4612 SQL is useful for engineers, but not for DS. Everybody need to be expert in own tool, Analyst and data engineers in SQL but Data Scientist in Statistics with R and Python. You can not do prediction with SQL. It is ok for simple aggregation and exploratory analysis. Data Science going far then that. And if Data Scientist will focus on the SQL then why we need Analysts? There must be a team, where Data Scientist, Analysts, Data Engineers, everyone have to do what he was trained to do best and then this team will be fast and successful. You will never find the doctor who is doing doctor, nurse and technician work, why we want to have all in one in IT? Data Scientist need to know data structure and be familiar with SQL. Analyst need to polish SQL and be expert. Together they are a powerful team.
While I understand where the confusion might come from, I don't personally agree with this statement "Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life". In fact, SQL is used so often in the day to day job at least for tech companies in silicon valley. May be you are talking about a specific company? Then I think it makes sense. Also, I'm not sure there's such a huge difference between DS and DA. Actually, Lyft's DS was rebranded from DA. See this medium post medium.com/@chamandy/whats-in-a-name-ce42f419d16c. Out of curiosity - what do you think are the things/tools DS should know about?
@@observer698 I work for big company, using only R and Python, and my SQL skills never been used on daily basis. SQL is may be good for retrieve data, data science is mostly forecast. And when you need you can do descriptive analysis using R or Python sufficient with visualization. I leave SQL for engineers. If Lift did mistake to designate DA as Data Scientist we not necessary to repeat and do the same thing. Everybody must to be expert in own area of expertise and then work will be done productive. Like shampoo and conditioner 2 in 1 never really good as shampoo and conditioner separated.