Growing fast as analytics engineer has almost nothing to do with degrees your earned.
It's about always learning, being ambitious and going after it with all your energy.
If you're able to work hard enough on a long period of time, you'll be able to become the best and outperform anyone with the best degrees out there.
#career #dataengineering #analyticsengineering
๐ช๐ต๐ฎ๐ ๐ ๐ผ๐ฏ๐๐ฒ๐ฟ๐๐ฒ๐ฑ ๐๐ต๐ฒ๐ป ๐ ๐๐๐ฎ๐ฟ๐๐ฒ๐ฑ ๐๐ผ ๐๐ผ๐ฟ๐ธ ๐ฎ๐ ๐ฎ ๐ฑ๐ฎ๐๐ฎ ๐ฎ๐ป๐ฎ๐น๐๐๐ ?
When I first started to work as a data analyst, I came from a research background on computational chemistry.
I thought I'd be the only one coming from a non-computer science or big data background.
Actually, I was totally wrong.
Most of my colleagues were coming from various backgrounds and they have entered the data & AI industry after doing a bootcamp in data analysis.
Takeaway: the background you come from doesn't matter to get a data position. The main is to answer this question: "๐ต๐ผ๐ ๐บ๐ ๐ฐ๐๐ฟ๐ฟ๐ฒ๐ป๐ ๐๐ธ๐ถ๐น๐น๐ ๐ฐ๐ผ๐๐น๐ฑ ๐๐ฟ๐ฎ๐ป๐๐น๐ฎ๐๐ฒ ๐ถ๐ป๐๐ผ ๐๐ต๐ฒ ๐ฑ๐ฎ๐๐ฎ & ๐๐ ๐ถ๐ป๐ฑ๐๐๐๐ฟ๐ ?"
Nothing fancy.
All meaningful.
#career #data #ai
๐๐ผ๐ฟ ๐ฎ๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐ ๐ฒ๐ป๐ด๐ถ๐ป๐ฒ๐ฒ๐ฟ๐ ๐๐ต๐ผ ๐๐ฎ๐ป๐ ๐๐ผ ๐๐ป๐ฑ๐ฒ๐ฟ๐๐๐ฎ๐ป๐ฑ ๐๐ต๐ถ๐ฐ๐ต ๐ธ๐ฒ๐ ๐ฏ๐ฒ๐ป๐ฒ๐ณ๐ถ๐๐ ๐๐ต๐ฒ ๐ฎ๐ฐ๐พ๐๐ถ๐๐ถ๐๐ถ๐ผ๐ป ๐ผ๐ณ ๐ฆ๐๐ ๐น๐ฎ๐ฏ๐ ๐ฏ๐ฟ๐ถ๐ป๐ด๐ ๐ณ๐ผ๐ฟ ๐๐ต๐ฒ๐บ:
- The ability to compile SQL queries locally, bypassing the data warehouse compiler. The query execution speed could increase by up to 7x, leading to significant time and cost savings.
- The ability to obtain columnโlevel lineage, which will be powerful for data governance and access management.
- The state method will be automatically included when models are run, meaning only modified models will be executed with the ๐ฅ๐ฃ๐ต ๐ณ๐ถ๐ฏ command! No more need to use the more complicated command:
๐ฅ๐ฃ๐ต ๐ณ๐ถ๐ฏ โ๐ด๐ฆ๐ญ๐ฆ๐ค๐ต ๐ด๐ต๐ข๐ต๐ฆ:๐ฎ๐ฐ๐ฅ๐ช๐ง๐ช๐ฆ๐ฅ+ โ๐ด๐ต๐ข๐ต๐ฆ:๐ฑ๐ข๐ต๐ฉ/๐ต๐ฐ/๐ฎ๐ข๐ฏ๐ช๐ง๐ฆ๐ด๐ต.๐ซ๐ด๐ฐ๐ฏ
- A built-in linter will be automatically implemented, faster than sqlfluff. The commands dbt lint and dbt lint --fix should be used to lint and fix your code.
#dbt #SDF #analyticsengineering #dataengineering
๐๐ฎ๐๐ฎ ๐ฝ๐ถ๐ฝ๐ฒ๐น๐ถ๐ป๐ฒ๐ ๐ฏ๐ฒ๐ณ๐ผ๐ฟ๐ฒ ๐ฎ๐ป๐ฑ ๐ฎ๐ณ๐๐ฒ๐ฟ ๐๐ต๐ฒ ๐ถ๐ป๐๐ฟ๐ผ๐ฑ๐๐ฐ๐๐ถ๐ผ๐ป ๐ผ๐ณ ๐ฑ๐ฏ๐ ๐ผ๐ป ๐๐ต๐ฒ ๐บ๐ฎ๐ฟ๐ธ๐ฒ๐ ๐ถ๐ป ๐ฎ๐ฌ๐ญ๐ฒ
Before 2016:
โข monolithic data pipelines
โข very long SQL scripts
-> very expensive as pipelines were build from scratch every time
-> data quality issues induced by data discrepancies for the same KPI in different dashboards (lack of confidence of business stakeholders)
-> high complexity to understand bugs when production breaks
After 2016:
โข modularity concept with staging, intermediate and mart models
โข software engineering practises for data pipelines
-> easier to maintain
-> reusability of models
-> version control for team collaboration
#dbt #analyticsengineering #dataengineering
๐ ๐ฎ๐ป๐ ๐ฎ๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐ ๐ฒ๐ป๐ด๐ถ๐ป๐ฒ๐ฒ๐ฟ๐ ๐ธ๐ฒ๐ฒ๐ฝ ๐ฏ๐๐ถ๐น๐ฑ๐ถ๐ป๐ด ๐๐ผ๐ผ ๐ฐ๐ผ๐บ๐ฝ๐น๐ฒ๐ ๐ฑ๐ฎ๐๐ฎ ๐ฝ๐ถ๐ฝ๐ฒ๐น๐ถ๐ป๐ฒ๐ ! ๐จ
Why ? Because they forget about the key concept of dbt: ๐บ๐ผ๐ฑ๐๐น๐ฎ๐ฟ๐ถ๐๐.
Modularity is the concept of building your final tables as ๐ถ๐ป๐ฑ๐ฒ๐ฝ๐ฒ๐ป๐ฑ๐ฒ๐ป๐ ๐บ๐ผ๐ฑ๐๐น๐ฒ๐.
This induces lots of benefits as:
โข ๐ฅ๐ฒ๐๐๐ฎ๐ฏ๐ถ๐น๐ถ๐๐ -> No need to start over from the source every time
โข ๐๐ผ๐น๐น๐ฎ๐ฏ๐ผ๐ฟ๐ฎ๐๐ถ๐ผ๐ป ๐ฎ๐ป๐ฑ ๐๐ฒ๐ฎ๐บ ๐ฒ๐ณ๐ณ๐ถ๐ฐ๐ถ๐ฒ๐ป๐ฐ๐ -> enable teams to work on different parts of the pipeline simultaneously
โข ๐๐ฎ๐๐ถ๐ฒ๐ฟ ๐ฑ๐ฒ๐ฏ๐๐ด๐ด๐ถ๐ป๐ด ๐ฎ๐ป๐ฑ ๐บ๐ฎ๐ถ๐ป๐๐ฒ๐ป๐ฎ๐ป๐ฐ๐ฒ -> simpler to understand and fix issues in data pipelines
Always be curious and stick to basics.
Basics will make you the best.
Hope it finds you well.
#dbt #analyticsengineering #dataengineering
Best practises:
- For staging models, use the prefix stg_
- For intermediate models, use the prefix int_
- Materialise staging and intermediate models as ephemeral models.
- For mart models, use the prefix dim_ for dimensions, fact_ for fact tables and obt_ for One Big Tables
Keeping in mind the key concept of dbt which is modularity will be a game-changer when building your data pipelines !
Before dbt was released, monolithic data pipelines were used in the industry meaning very long SQL scripts (10 000+ lines) were used to build table, data marts, datasets.
If someone else in the organisation was looking to model similar tables, they were starting over.
Indeed, modifying long SQL scripts was more difficult than starting over from source data.
This was problematic at various levels:
- it is expensive
- data discrepancies for the same KPI at two different places
- high complexity when production breaks
#dbt #careers #dataanalytics #analyticsengineering #dataengineering
This is your final layer, the tables which will constitute the data mart of your team and most probably the source for your activation layer which will be the direct backend of your dashboards.
๐ฎ ๐จ๐ฑ๐ฒ๐บ๐ ๐ฐ๐ผ๐๐ฟ๐๐ฒ๐ ๐ฒ๐๐ฒ๐ฟ๐๐ผ๐ป๐ฒ ๐๐ต๐ผ'๐ ๐๐ถ๐น๐น๐ถ๐ป๐ด ๐๐ผ ๐๐ฟ๐ฎ๐ป๐๐ถ๐๐ถ๐ผ๐ป ๐ถ๐ป๐๐ผ ๐ฑ๐ฎ๐๐ฎ ๐๐ฐ๐ถ๐ฒ๐ป๐ฐ๐ฒ ๐๐ต๐ผ๐๐น๐ฑ ๐ธ๐ป๐ผ๐ ๐ฎ๐ฏ๐ผ๐๐:
- The Complete Python Bootcamp From Zero to Hero in Python: https://t.co/HjTBaCJPS7
- Python for Data Science and Machine Learning Bootcamp
https://t.co/V9hHI9cK6S
You can get them for cheap while having a very good content !
I started with those 6 years ago.
I hope you enjoy them.
๐๐๐ง ๐ฐ๐ผ๐บ๐บ๐ฎ๐ป๐ฑ๐ ๐๐ต๐ถ๐ฐ๐ต ๐ฑ๐ผ ๐ป๐ผ๐ ๐ด๐ฒ๐ป๐ฒ๐ฟ๐ฎ๐๐ฒ ๐๐ต๐ฒ ๐บ๐ฎ๐ป๐ถ๐ณ๐ฒ๐๐.๐ท๐๐ผ๐ป ๐ณ๐ถ๐น๐ฒ, ๐ณ๐๐ป๐ฑ๐ฎ๐บ๐ฒ๐ป๐๐ฎ๐น ๐ฝ๐ถ๐ฒ๐ฐ๐ฒ ๐ณ๐ผ๐ฟ ๐๐น๐ถ๐บ ๐๐
- ๐ฑ๐ฏ๐ ๐ฑ๐ฒ๐ฝ๐
-> allows to install dbt packages
- ๐ฑ๐ฏ๐ ๐ฐ๐น๐ฒ๐ฎ๐ป
-> removes your target and dbt_packages folders and any other unnecessary files or directories generated during the execution of dbt commands
- ๐ฑ๐ฏ๐ ๐ฑ๐ฒ๐ฏ๐๐ด
-> check if your dbt project is correctly setup (check your profiles.yml, dbt_project.yml, if git is installed and your connection to your data warehouse)
๐ง๐ฎ๐ธ๐ฒ๐๐ฎ๐: the manifest.json is generated by any command which parses your dbt project (build, run, test, seed, snapshot, compile, ...)
๐๐ฟ๐ผ๐๐ถ๐ป๐ด ๐ณ๐ฎ๐๐ ๐ถ๐ป ๐ฑ๐ฎ๐๐ฎ ๐ฎ๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐ ๐ต๐ฎ๐ ๐ฎ๐น๐บ๐ผ๐๐ ๐ป๐ผ๐๐ต๐ถ๐ป๐ด ๐๐ผ ๐ฑ๐ผ ๐๐ถ๐๐ต ๐ฑ๐ฎ๐๐ฎ ๐ฑ๐ฒ๐ด๐ฟ๐ฒ๐ฒ๐
It's about finding the way your skills can translate into the industry and being curious enough to always keep learning as it is a very-fast evolving area.
Then add:
- very hard working
- soft-skills development
- confidence
Correct game-plan + obsession = results
๐ช๐ต๐ฎ๐ ๐ ๐ผ๐ฏ๐๐ฒ๐ฟ๐๐ฒ๐ฑ ๐๐ต๐ฒ๐ป ๐ ๐๐๐ฎ๐ฟ๐๐ฒ๐ฑ ๐๐ผ ๐๐๐ฒ ๐๐น๐ถ๐บ ๐๐
When I started to use slim CI, I struggled to understand dbt artifacts.
I thought I'd be the only one having difficulties to understand this notion.
Actually, lots of my colleagues didn't bother understanding artifacts.
Always be curious and willing to understand most difficult notions.
๐ง๐ฎ๐ธ๐ฒ๐ฎ๐๐ฎ๐: dbt artifacts are json files produced when dbt commands are run. These files are stored in the /target folder. It is mainly used for monitoring purposes as it is filled with metadata with the dbt version you're using, status of your job, the environment you executed your job, ...
Hope it finds you well.
๐ฆ๐๐ฟ๐๐ด๐ด๐น๐ถ๐ป๐ด ๐๐ผ ๐๐ป๐ฑ๐ฒ๐ฟ๐๐๐ฎ๐ป๐ฑ ๐๐ต๐ฎ๐ ๐ถ๐ ๐บ๐ผ๐ฑ๐๐น๐ฎ๐ฟ๐ถ๐๐ ๐ถ๐ป ๐ฑ๐ฏ๐ ?
Yesterday, my newsletter subscribers got my article explaining this concept in a simple manner.
Missed the issue ? Grab it below โฌ๏ธ
https://t.co/L8f22MJ5YR
๐จ๐ป๐ฑ๐ฒ๐ฟ๐๐๐ฎ๐ป๐ฑ๐ถ๐ป๐ด ๐๐ต๐ฒ ๐ฝ๐ผ๐๐ฒ๐ฟ ๐ผ๐ณ ๐บ๐ผ๐ฑ๐๐น๐ฎ๐ฟ๐ถ๐๐ ๐๐ถ๐๐ต ๐ฑ๐ฏ๐ !
Exciting news! My next newsletter article dives into modularity โ the core concept dbt introduced to build data pipelines ๐
Here is what you have to know:
โข Modularity consists into building a final product using independent modules
โข Modularity translates into dbt through the use of staging, intermediate and mart models
Tomorrow, at 7:30 AM ET, I'll explain my newsletter subscribers this concept and why it is so important to understand it properly.
The link here: https://t.co/jFU8qUqX0T
๐ช๐ต๐ฎ๐ ๐ ๐ผ๐ฏ๐๐ฒ๐ฟ๐๐ฒ๐ฑ ๐๐ต๐ฒ๐ป ๐ ๐ฑ๐ฒ๐ฐ๐ถ๐ฑ๐ฒ๐ฑ ๐๐ผ ๐พ๐๐ถ๐ ๐บ๐ ๐ฃ๐ต๐
When I started wondering if I should quit my PhD, I asked other PhD students for advice.
I thought I'd be the only full having these weird thoughts.
Actually, it was the total opposite.
95% of researchers I talked to was wondering if they should quit every single morning.
๐ง๐ฎ๐ธ๐ฒ๐ฎ๐๐ฎ๐: when struggling to make decisions, talking to others could simply make you feel "normal". This will help in your decision-making.
Nothing fancy.
All meaningful.