There are endless posts out there talking about how you can go from 0-100 in a short period of time as an engineer.
I know, I have written a few articles with that notion.
May it be how to break into a certain role or how to go from a junior to a senior quickly. Now don’t get me wrong, I believe all these articles and content have value.
There are a lot of little lessons you can pick up along the way on becoming a senior engineer or growing into certain roles that might just need to be explained and don’t need to be experienced.
On the flip side, however, I find that sometimes we are often so focused on getting to some end result that we often miss developing a lot of the basic skills along the way.
The whole, it’s not the destination it’s a journey vibe.
Don’t get me wrong, I understand that some of it is driven by a financial factor, as well as simply trying to progress. That is what we’ve been doing since we were in school.
Every year or two, there are clear growth patterns. So it makes sense that we’d want that to continue.
But I wanted to write an article as an argument for embracing being a beginner, really focusing on building baseline skills and just enjoying that instead of rushing to get to the top of the mountain.
So let’s dive in.
I Know Pandas But I Don’t Know Python
When I interviewed candidates at Facebook, I noticed an interesting pattern.
When I would interview Data Science Master’s students, they’d have a harder time with the Python questions.
I’d ask a question that’d require a basic loop and perhaps a few other foundational concepts in programming. And suddenly, they are wondering if they can use Pandas to solve said problem.
It became apparent that many of them only knew Python from the perspective of Pandas, similar to the tweet above. One one side, due to a framework or library, many data scientists and data engineers can deliver a lot of value for the business.
But get stuck on basic tasks.
Now, there is an argument that can be made that, well, who cares? If you’re adding business value, let’s just forget about knowing how to run a for loop.
After all, as someone who started in Java, there are lot of benefits I find using Python. Mainly because I don’t have as much overhead to consider.
At what point should the cut-off be? How deep do we actually need to understand the tools we use?
In the end, I am not saying everyone that uses a computer needs to understand how silicon is processed and how different microchip architecture is set-up, but there are so many benefits to understanding the basics.
What Happens When You Don’t Have The Basics?
The world is changing fast.
And who knows, maybe we won’t need to know the basics of programming or system design because some LLM will take care of every line of code. But it’s hard to imagine that world.
I find that perhaps if that is the world we are headed for, we might have more situations like the chat below. Which I assume is a parody and not real.
Where we are able to deploy websites and applications. All without ever understanding how servers and clients interact or the role a database plays.
But on the other hand, we have situations like the article below that I am concerned might happen.
Where supposedly a TSA system was accessible online and worse easy to hack via a SQL injection.
Many programmers would likely consider this a pretty basic hacking technique to be employed to hack a site. I recall testing out SQL injection when first learning the concept because it was fascinating.
But most sites I tried didn’t allow for it to work.
That’s because it’s a well known issue and there are best practices used to avoid it.
Otherwise, you get the classic Bobby Tables situation.
The Benefits of Building a Technical Foundation
If you understand a subject matter more granularly, it provides you more flexibility when it comes to what you can do with said knowledge.
You have a finer grain of control and knowledge surface you can actually alter.
I view this like building houses.
Sure, you can have a lot of prefabricated pieces, but that continually further limits how far back you can actually customize your house. Or if someone were to just give you wood and nails, you wouldn’t be able to do much.
Obviously, there is a point of diminishing returns. After all, I am not saying you have to chop down your own trees and mill your own wood (although I have friends who think that way). Nor do I believe people need to know assembly (although I recall seeing a tweet of someone who thought people should know it).
But I do believe you should understand the tools you are using. The better you understand them, the more you can do with them.
In addition, it’s far easier to learn new technical concepts when you build up a strong baseline foundation. Think about it; if you don’t understand even the basics of networking, it will feel impossible to operate outside of your own laptop.
If you don’t understand how a firewall works, what white listing means or what an SFTP is, interacting with other computers, even with code, becomes hard. You’ll be the one sending the localhost:3000 to a friend thinking that's how it works.
Overall, I get why there is a rush, but I really hope you can find time to build a solid foundation
Enjoy The Journey
It’s hard for me not to correlate both the desire for people to speed through different engineering levels as well as the desire to use the coolest technologies to how I was when I worked in fine dining.
I recall being 16, only having worked nine months at my first restaurant, and wanting to go from prep to garde manger and wanting to go from traditional northern Italian to molecular gastronomy (is that even cool anymore).
But honestly, after eventually getting what I wanted. I quickly realized in a few months that I really loved the basics. I loved producing good food that tasted amazing.
As one of my chefs would say, “Hey, you know what this dish needs for garnish? A little solid technique.”
In the same way, as we emphasize speed and growth in the technical and corporate world, I just want to make an appeal.
Not to slow down but, in your rush, don’t skip the basics. Enjoy the journey, and embrace being a beginner.
As always, thanks for reading!
Data Engineering for AI/ML Conference
Reliable data infrastructure and data management stops a lot of companies from implementing AI or ML into their data workflows. If your company doesn't know what data it has, how its stored, how to integrate it, or maybe they just don't trust the reports, then it'll be really hard to implement AI or ML into your processes.
And perhaps that's why the Data Engineering for AI/ML conference that Demetrios Brinkmann is putting on already has +7000 sign ups.
You're not going to want to miss out!
Join My Data Engineering And Data Science Discord
If you’re looking to talk more about data engineering, data science, breaking into your first job, and finding other like minded data specialists. Then you should join the Seattle Data Guy discord!
We are now well over 7000 members!
Join My Technical Consultants Community
If you’re a data consultant or considering becoming one then you should join the Technical Freelancer Community! We have over 700 members!
You’ll find plenty of free resources you can access to expedite your journey as a technical consultant as well as be able to talk to other consultants about questions you may have!
Articles Worth Reading
There are 20,000 new articles posted on Medium daily and that’s just Medium! I have spent a lot of time sifting through some of these articles as well as TechCrunch and companies tech blog and wanted to share some of my favorites!
How to cut exact scoring moments from Euro 2024 videos with SQL
When my cofounder Jason Wang and I were watching the Euro2024 semi-final, one idea came to us: why not use AI to find the exact scoring moments and cut it into clips?
So, we hacked this out!
Don’t Lead a Data Team Before Reading This - The First Chapter
Imagine you’ve just been put in charge of a data team supporting a mid-sized e-commerce company. I speak from experience.
In this scenario, let’s say the CEO brought you on board. We’ll call her Rachel.
Rachel is in a tough spot.
The business is struggling, navigating difficult market conditions. Sales are down 30% year-over-year, and Rachel may soon face hard decisions, including the possibility of downsizing the workforce.
Hopefully, you’ve done your homework and quickly identified some of these challenges, thanks to your access to the data. But now, let’s throw in another wrench as you step in to lead this data team.
The data infrastructure is a mess — built on an obscure, free tool with no documentation (true story). And now, you’re being asked to deliver numbers. The CEO needs to know where to focus her efforts: Where can she start to recover lost sales? What projects can be cut?
End Of Day 142
Thanks for checking out our community. We put out 3-4 Newsletters a week discussing data, tech, and start-ups.
I started on Mosaic in 1993… i was out of college by the time i truly entered programming… for me, Unix shell, HTML, Lynx programming —- then… just bust-ass trying to KEEP learning, KEEP using your intuition of the ‘good’ v ‘bad’ concepts behind design…. In Data… companies will NEVER understand the importance of having a truly unified Data Dictionary or Catalog… even with a centralized data department, the concept as simple as ‘miles’ or ‘kilometers’ as a measure can become 15 different ‘versions’…. Metric definition at the OUTSET, pervasive throughout the company, no ‘back of the envelope’ calculations accepted as an ‘alternative metric’, etc…. Just my 2 cents ✌🏼😊 accuracy and precision mean something.
This is the biggest problem I see right now with most data people. Once you go past the initial code and library functions, they fail to really understand the logic behind it all. I always say, the first two years of your career the best thing you can do is a be a sponge. Absorb everything you can learn and know how to focus on what matters