Image by Author
#Introduction
Are we all in a race to the bottom created by ourselves? Data professionals have been employed for years to develop large language models (LLMs).
Now, the number of open data positions seems to shrink daily. Of those advertised, most seem quite abysmal.
By abysmal, I don’t mean too-low salaries or unreasonable technical expectations from candidates. No, I mean those vague phrases: “Comfortable working with AI productivity tools,” “Able to ship high volumes of code,” or “Strong prompt-engineering skills a plus.” Translation: A chatbot is your main coding partner, there will be no mentorship, no standards, just code churning.
A chatbot, our own creation, is now reducing us to mere copy-pasters of its outputs. It does not sound like very meaningful or fulfilling work.
In this environment, is it still possible to find meaningful work?
#What Is Vibe Coding?
Andrej Karpathy, an OpenAI co-founder, coined the term “vibe coding.” It means you don’t code at all.
What you do: You are drinking your matcha latte, vibing, giving orders to a coding chatbot, and copy-pasting its code into your code editor.
What the chatbot does: It codes, checks for errors, and debugs the code.
What you do not do: You don’t code, you don’t check for errors, and you don’t debug the code.
How does such work feel? Like full-time brain rot.
What did you expect? You handed over all the interesting, creative, and problem-solving aspects of your job to a chatbot.
#Vibe Coding Has Devalued Coding
“It’s not too bad for throwaway weekend projects, but still quite amusing,” is what Andrej Karpathy said about vibe coding.
Despite that, the companies you would trust — those who don’t think about their products as “throwaway weekend projects” — decided it was still a good idea to start practicing vibe coding.
The AI coding tools came in, and data professionals were thrown out. For those who remained, their main job is conversing with a chatbot.
The work gets done faster than ever. You meet deadlines that were impossible before. The ability to pretend you are being productive has achieved a completely new level.
The result? Half-finished prototypes. Code that breaks in production. Data professionals who don’t know why the code is not working. Hell, they don’t even know why the code is working.
Prediction: Professionals who really know how to code will be getting back in fashion soon enough. After all, someone has to rewrite that code written “so fast” by a chatbot. Talk about efficiency. Well, you don’t get much more efficient than that.
But how do you survive until then?
#How Do You Find a Meaningful Job Now?
The principle is very simple: Do the work the chatbot can’t do. Here is a comparison between what AI can’t do and what you can.
Of course, doing all that requires certain skills.
#Required Skills
Finding meaningful work in the age of vibe coding requires these skills.
//1. Technical Specification Writing
Most requests you will deal with come with incomplete and ambiguous information. If you can turn that info into a precise technical specification, you will be valued for preventing contradictory assumptions and expectations from development work. Technical specifications help align all teams participating in the project.
Here is what this skill encompasses.
Resources:
//2. Data Flow Understanding
Systems don’t fail only because of incorrect code. Arguably, they fail more often because of incorrect assumptions about the data.
No matter the vibe coding, someone still has to understand how data is generated, modified, and consumed.
Resources:
//3. Production Debugging
LLMs can’t debug in production. That is where you come in, with your knowledge of interpreting logs and metrics to diagnose root causes for production incidents.
Resources:
//4. Architectural Reasoning
Without understanding their architecture, systems will be designed to work in production (fingers crossed!), but they will often fail under real traffic.
Architectural reasoning determines a system’s reliability, latency, throughput, and operational complexity.
Resources:
//5. Schema & Contract Design
Poorly designed schemas and definitions of how systems communicate can cause a domino effect: cascading failures that lead to excessive migrations, which in turn lead to coordination friction between teams.
Create a good design, and you have created stability and prevented outages.
Resources:
//6. Operational Awareness
Systems always behave differently in production environments than in development.
As the whole idea is for the system to work, you have to understand how components degrade, how failures happen, and what and where bottlenecks are. With that knowledge, the transition between development and production will be less painful.
Resources:
//7. Requirement Negotiation
“Prevention is better than cure” applies here, too. You can expect almost endless outages and rewrites if the requirements were initially poorly defined. It is hell trying to repair once the system is in production.
To prevent this, you must skillfully intervene in the early development stages to adjust scope, communicate technical constraints, and translate vague requirements into technically feasible ones.
Resources:
//8. Behavioral Code Review
You should be able to read code not only for its functionality but more broadly for its system impact.
That way, you will be able to identify risks that don’t show up in linting or tests, especially in AI-generated patches, and prevent subtle bugs that would otherwise mess with your production.
Resources:
//9. Cost & Performance Judgement
Your work has financial and operational implications. You will be more valued if you show you understand them by considering computer usage, latency, throughput, and infrastructure bills in your work.
That is much more valued by companies than building expensive systems that also don’t work.
Resources:
#Actual Jobs That Still Feel Meaningful
Finally, let’s talk about actual jobs that still involve using at least some or all of the skills we discussed earlier. The focus may be shifting away from coding itself, but some aspects of those jobs can still feel meaningful.
//1. Data Scientist (The Real Kind, Not Notebook-Only)
AI can generate code, but data scientists provide structure, reasoning, and domain understanding to vague and, often, misframed problems.
//2. Machine Learning Engineer
AI can train a model, but what about data preparation, training pipelines, serving infrastructure, monitoring, failure handling, etc? That is a machine learning engineer’s job.
//3. Analytics Engineer
AI can write SQL queries, but analytics engineers are those who guarantee correctness and long-term stability.
//4. Data Engineer
Data engineers are in charge of data trustworthiness and availability. AI can transform data, but it can’t manage system behavior, upstream changes, or long-term data reliability.
//5. Machine Learning Ops/Data Ops Engineer
These roles ensure pipelines run reliably and models stay accurate.
You can use AI to suggest fixes, but performance, system interactions, and production failures still need human oversight.
//6. Research Scientist (Applied Machine Learning/Artificial Intelligence)
AI can’t really come with anything new, especially not new modeling approaches and algorithms; it can just rehash what already exists.
For anything else, expert knowledge is needed.
//7. Data Product Manager
This job’s description is to define what data or machine learning products should do, which involves translating business needs into clear technical requirements and aligning various stakeholders’ priorities.
You can’t employ AI to negotiate scope or evaluate risk.
//8. Governance, Compliance, and Data Quality Roles
AI can’t ensure that data practices meet legal, ethical, and reliability standards. Someone needs to define rules and enforce them, which is what governance, compliance, and data quality roles are for.
//9. Data Visualization/Decision Science Roles
Data needs to be connected to decisions for it to have any purpose. AI can generate charts all it wants, but it doesn’t know what matters for the decision being made.
//10. Senior Data Roles (Principal, Staff, Lead)
AI is a great assistant, but it is a terrible leader. More precisely, it can’t lead.
Decision-making? Cross-domain leadership? Guiding technical direction? Only humans can do those.
#Conclusion
Finding meaningful work in the age of vibe coding isn’t easy. However, coding is not the only thing that data professionals do. Try to look for job ads that, even if they require vibe coding, also require some of those skills that AI still can’t replace.
Nate Rosidi is a data scientist and in product strategy. He’s also an adjunct professor teaching analytics, and is the founder of StrataScratch, a platform helping data scientists prepare for their interviews with real interview questions from top companies. Nate writes on the latest trends in the career market, gives interview advice, shares data science projects, and covers everything SQL.
