Data Engineers – Telegram
Data Engineers
9.48K subscribers
314 photos
79 files
299 links
Free Data Engineering Ebooks & Courses
Download Telegram
𝐊𝐮𝐛𝐞𝐫𝐧𝐞𝐭𝐞𝐬 𝐓𝐞𝐜𝐡 𝐒𝐭𝐚𝐜𝐤

What it is: A powerful open-source platform designed to automate deploying, scaling, and operating application containers.

𝐂𝐥𝐮𝐬𝐭𝐞𝐫 𝐌𝐚𝐧𝐚𝐠𝐞𝐦𝐞𝐧𝐭:
- Organizes containers into groups for easier management.
- Automates tasks like scaling and load balancing.

𝐂𝐨𝐧𝐭𝐚𝐢𝐧𝐞𝐫 𝐑𝐮𝐧𝐭𝐢𝐦𝐞:
- Software responsible for launching and managing containers.
- Ensures containers run efficiently and securely.

𝐒𝐞𝐜𝐮𝐫𝐢𝐭𝐲:
- Implements measures to protect against unauthorized access and malicious activities.
- Includes features like role-based access control and encryption.

𝐌𝐨𝐧𝐢𝐭𝐨𝐫𝐢𝐧𝐠 & 𝐎𝐛𝐬𝐞𝐫𝐯𝐚𝐛𝐢𝐥𝐢𝐭𝐲:
- Tools to monitor system health, performance, and resource usage.
- Helps identify and troubleshoot issues quickly.

𝐍𝐞𝐭𝐰𝐨𝐫𝐤𝐢𝐧𝐠:
- Manages network communication between containers and external systems.
- Ensures connectivity and security between different parts of the system.

𝐈𝐧𝐟𝐫𝐚𝐬𝐭𝐫𝐮𝐜𝐭𝐮𝐫𝐞 𝐎𝐩𝐞𝐫𝐚𝐭𝐢𝐨𝐧𝐬:
- Handles tasks related to the underlying infrastructure, such as provisioning and scaling.
- Automates repetitive tasks to streamline operations and improve efficiency.

- 𝐊𝐞𝐲 𝐜𝐨𝐦𝐩𝐨𝐧𝐞𝐧𝐭𝐬:
- Cluster Management: Handles grouping and managing multiple containers.
- Container Runtime: Software that runs containers and manages their lifecycle.
- Security: Implements measures to protect containers and the overall system.
- Monitoring & Observability: Tools to track and understand system behavior and performance.
- Networking: Manages communication between containers and external networks.
- Infrastructure Operations: Handles tasks like provisioning, scaling, and maintaining the underlying infrastructure.
2
Netflix Analytics Engineer Interview Question (SQL) 🚀
---

### Scenario Overview
Netflix wants to analyze user engagement with their platform. Imagine you have a table called netflix_data with the following columns:
- user_id: Unique identifier for each user
- subnoscription_plan: Type of subnoscription (e.g., Basic, Standard, Premium)
- genre: Genre of the content the user watched (e.g., Drama, Comedy, Action)
- timestamp: Date and time when the user watched a show
- watch_duration: Length of time (in minutes) a user spent watching
- country: User’s country

The main objective is to figure out how to get insights into user behavior, such as which genres are most popular or how watch duration varies across subnoscription plans.

---

### Typical Interview Question

> “Using the netflix_data table, find the top 3 genres by average watch duration in each subnoscription plan, and return both the genre and the average watch duration.”

This question tests your ability to:
1. Filter or group data by subnoscription plan.
2. Calculate average watch duration within each group.
3. Sort results to find the “top 3” within each group.
4. Handle tie situations or edge cases (e.g., if there are fewer than 3 genres).

---

### Step-by-Step Approach

1. Group and Aggregate
Use the GROUP BY clause to group by subnoscription_plan and genre. Then, use an aggregate function like AVG(watch_duration) to get the average watch time for each combination.

2. Rank Genres
You can utilize a window function—commonly ROW_NUMBER() or RANK()—to assign a ranking to each genre within its subnoscription plan, based on the average watch duration. For example:

   AVG(watch_duration) OVER (PARTITION BY subnoscription_plan ORDER BY AVG(watch_duration) DESC)

(Note that in many SQL dialects, you’ll need a subquery because you can’t directly apply an aggregate in the ORDER BY of a window function.)

3. Select Top 3
After ranking rows in each partition (i.e., subnoscription plan), pick only the top 3 by watch duration. This could look like:

   SELECT subnoscription_plan,
genre,
avg_watch_duration
FROM (
SELECT subnoscription_plan,
genre,
AVG(watch_duration) AS avg_watch_duration,
ROW_NUMBER() OVER (
PARTITION BY subnoscription_plan
ORDER BY AVG(watch_duration) DESC
) AS rn
FROM netflix_data
GROUP BY subnoscription_plan, genre
) ranked
WHERE rn <= 3;


4. Validate Results
- Make sure each subnoscription plan returns up to 3 genres.
- Check for potential ties. Depending on the question, you might use RANK() or DENSE_RANK() to handle ties differently.
- Confirm the data type and units for watch_duration (minutes, seconds, etc.).

---

### Key Takeaways
- Window Functions: Essential for ranking or partitioning data.
- Aggregations & Grouping: A foundational concept for Analytics Engineers.
- Data Validation: Always confirm you’re interpreting columns (like watch_duration) correctly.

By mastering these techniques, you’ll be better prepared for SQL interview questions that delve into real-world scenarios—especially at a data-driven company like Netflix.
6
Polymorphism in Python 👆
2
⌨️ MongoDB Cheat Sheet

MongoDB is a flexible, document-orientated, NoSQL database program that can scale to any enterprise volume without compromising search performance.


This Post includes a MongoDB cheat sheet to make it easy for our followers to work with MongoDB.

Working with databases
Working with rows
Working with Documents
Querying data from documents
Modifying data in documents
Searching
1
📖 Data Engineering Roadmap 2025

𝟭. 𝗖𝗹𝗼𝘂𝗱 𝗦𝗤𝗟 (𝗔𝗪𝗦 𝗥𝗗𝗦, 𝗚𝗼𝗼𝗴𝗹𝗲 𝗖𝗹𝗼𝘂𝗱 𝗦𝗤𝗟, 𝗔𝘇𝘂𝗿𝗲 𝗦𝗤𝗟)

💡 Why? Cloud-managed databases are the backbone of modern data platforms.

Serverless, scalable, and cost-efficient
Automated backups & high availability
Works seamlessly with cloud data pipelines

𝟮. 𝗱𝗯𝘁 (𝗗𝗮𝘁𝗮 𝗕𝘂𝗶𝗹𝗱 𝗧𝗼𝗼𝗹) – 𝗧𝗵𝗲 𝗙𝘂𝘁𝘂𝗿𝗲 𝗼𝗳 𝗘𝗟𝗧

💡 Why? Transform data inside your warehouse (Snowflake, BigQuery, Redshift).

SQL-based transformation – easy to learn
Version control & modular data modeling
Automates testing & documentation

𝟯. 𝗔𝗽𝗮𝗰𝗵𝗲 𝗔𝗶𝗿𝗳𝗹𝗼𝘄 – 𝗪𝗼𝗿𝗸𝗳𝗹𝗼𝘄 𝗢𝗿𝗰𝗵𝗲𝘀𝘁𝗿𝗮𝘁𝗶𝗼𝗻

💡 Why? Automate and schedule complex ETL/ELT workflows.

DAG-based orchestration for dependency management
Integrates with cloud services (AWS, GCP, Azure)
Highly scalable & supports parallel execution

𝟰. 𝗗𝗲𝗹𝘁𝗮 𝗟𝗮𝗸𝗲 – 𝗧𝗵𝗲 𝗣𝗼𝘄𝗲𝗿 𝗼𝗳 𝗔𝗖𝗜𝗗 𝗶𝗻 𝗗𝗮𝘁𝗮 𝗟𝗮𝗸𝗲𝘀

💡 Why? Solves data consistency & reliability issues in Apache Spark & Databricks.
Supports ACID transactions in data lakes
Schema evolution & time travel
Enables incremental data processing

𝟱. 𝗖𝗹𝗼𝘂𝗱 𝗗𝗮𝘁𝗮 𝗪𝗮𝗿𝗲𝗵𝗼𝘂𝘀𝗲𝘀 (𝗦𝗻𝗼𝘄𝗳𝗹𝗮𝗸𝗲, 𝗕𝗶𝗴𝗤𝘂𝗲𝗿𝘆, 𝗥𝗲𝗱𝘀𝗵𝗶𝗳𝘁)

💡 Why? Centralized, scalable, and powerful for analytics.
Handles petabytes of data efficiently
Pay-per-use pricing & serverless architecture

𝟲. 𝗔𝗽𝗮𝗰𝗵𝗲 𝗞𝗮𝗳𝗸𝗮 – 𝗥𝗲𝗮𝗹-𝗧𝗶𝗺𝗲 𝗦𝘁𝗿𝗲𝗮𝗺𝗶𝗻𝗴

💡 Why? For real-time event-driven architectures.
High-throughput

𝟳. 𝗣𝘆𝘁𝗵𝗼𝗻 & 𝗦𝗤𝗟 – 𝗧𝗵𝗲 𝗖𝗼𝗿𝗲 𝗼𝗳 𝗗𝗮𝘁𝗮 𝗘𝗻𝗴𝗶𝗻𝗲𝗲𝗿𝗶𝗻𝗴

💡 Why? Every data engineer must master these!

SQL for querying, transformations & performance tuning
Python for automation, data processing, and API integrations

𝟴. 𝗗𝗮𝘁𝗮𝗯𝗿𝗶𝗰𝗸𝘀 – 𝗨𝗻𝗶𝗳𝗶𝗲𝗱 𝗔𝗻𝗮𝗹𝘆𝘁𝗶𝗰𝘀 & 𝗔𝗜

💡 Why? The go-to platform for big data processing & machine learning on the cloud.

Built on Apache Spark for fast distributed computing
4