Generative AI skills every dev needs to know in 2024

Are you ready for AI-powered development?

No, I’m not talking about GitHub Co-Pilot or other AI Code Assistants. I’m talking about AI integration, like we’ve seen with cloud development over the past few years. As AI product offerings develop and iterate, more developers will be required to understand how to incorporate AI innovations into existing applications.

Luckily, this is a scenario that you can prepare for by prioritizing the right skill development.

Today we’ll talk about:

  • A framework for developer skill progression
  • How to become a generative AI dev from scratch
  • What every dev should know about AI integration in 2024
  • What data analysts need to know about AI integration in 2024

Let’s jump right in!

A framework for developer skill development

As developers, our skills are constantly building or “stacking” on top of one another.

Regardless of the specific technologies you use or the tools you work on, software engineering is built on the foundation of problem-solving skills. This common foundation continues past just problem solving skills. Software engineers across specializations utilize the same programming languages and frameworks, sometimes to reach very different end goals.

Below is a pyramid or “stack” of developer skills to illustrate what I mean.

This is a general depiction of skill stacking meant to apply to software developers across disciplines. As you can see, understanding of AI fits into the middle of the pyramid, at the same level of API and Cloud knowledge for many other devs.

AI integration is built on the same common skill prerequisites that come before. As a result, it is possible to become a generative AI developer from zero.

In the next section I’ll briefly walk through some of the common skills that can get you started building AI applications of your own, and ultimately get you job-ready for 2024 and beyond.

How to become a generative AI dev from zero

Since software skills build upon one another, the bad news for new developers is that you have to learn all the basics before you can really get started with AI in earnest. However, with the right resources and a focused learning plan, it’s possible to build the necessary skills and experience to become a Gen AI dev.

Here’s a quick glance at one possible pathway you can take from complete novice to fully fledged AI developer:

  1. Learn to Code: Problem solving skills and Python basics.
  2. Python Projects: Experiment with simple Python projects and build real-world software.
  3. Data Structures and Algorithms: Your first experience with advanced computer science concepts.
  4. Object Oriented Programming (OOP): OOP is a prerequisite for building modern, scalable applications.
  5. Cloud and API Design: Learn how to effectively leverage and interact with cloud computing building blocks.
  6. Data Science Basics: AI and machine learning build heavily upon data science fundamentals. (More on this later!)
  7. Machine Learning and AI: Learning the theory and fundamentals behind these technologies make them more digestible. Then you’ll need to get hands-on practice.

Although this may seem relatively straightforward here, it’s important to realize that each of these steps will take a considerable amount of time to truly understand. Rushing through any one could compromise your comprehension and ultimately set you back. Programming is a lifelong pursuit, and requires that you constantly learn new things — even for experienced developers.

Long story short, always keep adding to your skill stack!

What every dev should know about AI in 2024

Much like the cloud development revolution in the early 2010s, we’re in the midst of an AI revolution today. As a result, AI integration is rapidly becoming a requirement for many developers. Just as cloud development created a new, hybrid model for creating scalable web applications, I predict that we will see a similar change in AI development in the near future.

What does this mean in practice? It means that more developers will have to get comfortable building applications on top of existing AI tools.

Thankfully, there is a difference between leveraging AI and building the actual AI models themselves. Unless you are actually working at AI organizations like OpenAI or Anthropic, or on AI-specific teams at big tech companies like Google and Facebook, you are not going to need to know the intricacies of AI or machine learning.

So, what do you need to know about AI to effectively leverage them?

Large Language Models (LLMs)

Large Language Models are the type of AI models that power applications like ChatGPT and Google Bard. The LLMs behind these tools are GPT4 and Google Gemini, respectively.

The basics of how LLMs work is essential to understanding how to use them as a developer. And, when it comes down to it AI is a really glorified autocomplete. So, oftentimes it’s important to know what goes on under the hood so you can customize it to your specific use-case.

Some basics questions to know about any given LLM:

  • How is it optimized?
  • What data is it trained on?
  • Does it have any specialized use-cases? Any weak points?
  • What sort of privacy or safety provisions are in place? Are they sufficient?

LangChain

LangChain is a framework for developing applications powered by LLMs. The framework exists in several parts:

  • Python & JavaScript Libraries: These libraries contain the basic core functionality of the framework.
  • LangChain Templates: Reference architectures for performing a range of tasks
  • LangServe: A library for deploying LangChains as a REST API
  • LangSmith: A platform for monitoring, debugging, and evaluating LangChains or other LLM frameworks

LangChain represents just one tool that allows developers to integrate existing LLMs and even entire Gen AI systems into customized applications.

If you are a current developer, the above steps still apply, you may just be farther along in certain areas.

Since a lot of developers have the basics down, I’ll dive deeper into the Data Science and Machine Learning concepts that all developers should understand.

Machine Learning & Data Science Basics

When it comes to Machine Learning here are a few topics that all developers should be familiar with.

  • Machine learning algorithms that inform the three types of machine learning, as seen below.
  • Supervised learning: Linear regression, logistic regression, and decision trees.
  • Unsupervised learning: K-means clustering and hierarchical clustering
  • Reinforcement learning: Efficient Memory-based Exploration (MEME)
  • Neural networks and deep learning: The core architectural components of LLMs and the layers of processing that occur in multi-faceted AI models.
  • Model evaluation and tuning: The benchmarks and assessments that AI organizations test and tune their models based on.

The data science basics are generally more accessible than the AI basics. Let’s take a look at some of the essential concepts to know.

  • Statistics and probability: Know the basic mathematical concepts behind hypothesis testing and data distributions.
  • Data visualization: Be prepared to use or reference data visualization tools and libraries like Matplotlib, Seaborn and Bokeh.
  • Data preprocessing: Know how to clean and scope data before parsing it.
  • Linear algebra: Most devs that aren’t building or analyzing the AI themselves, won’t need much math beyond their regular scope, but it is always a good idea to re-familiarize yourself with concepts like vectors and matrices.

Now that you have an overview of the concepts you’ll need to know as a developer, let’s cover the skills that a data analyst may need.

What data analysts need to know about AI in 2024

At a high level, data analysts need to understand what data AI models are trained on, their core functions, and how to understand their output.

For models like GPT-4 this high level understanding can be difficult. The training data is so vast that it requires a substantial amount of research to fully understand what goes on behind the scenes.

For smaller, more niche models, understanding their function — from training data to output — becomes easier.

One of the best ways for data analysts to understand LLMs is to research the output that LLMs produce. Keep records of prompts and their outputs, and eventually work to predict the reasonable output that an LLM will return when prompted. By aiming to standardize prompts you can better understand how to leverage LLMs.

Data analysts need to be highly focused on prompt engineering. Understanding how to get the most out of a Gen AI is crucial when implementing them for both internal and external facing tools. Conversely, data analysts also need to understand the limitations of LLMs and how to work around Gen AI weak points.

More prioritization will occur in the future on the responsible/ethical AI development practices. As a result, both the engineers building the models and the teams leveraging them will need to have a common understanding of how to make generative AI as safe as possible.

For data analysts, this means building a substantial layer of protection over existing LLMs so that they stay within the desired use cases. Current AI are massive statistical models that are fairly easy to trick. The challenges arise when getting generative AI to not divulge sensitive information, or not hallucinate or assume things it doesn’t know.

Ready to learn? Here’s where to start.

AI and machine learning are the foundation upon which the next generation of software applications will be built. So, regardless of your specialization, most devs will need to understand how to leverage AI in the coming months and years.

The better prepared you are to understand and innovate with these LLMs, the bigger impact it can have on your career.

If you’re interested in upskilling in your specific function area to prepare for the new AI-powered world to come, I recommend you dive into Educative’s exhaustive catalog of Data Science & Machine Learning resources.

These courses and projects were developed by industry pros to get you hands-on with these essential skills, giving you a leg up as we kick off this new paradigm of software development.

Happy learning!

Original Post>

Enjoyed this article? Sign up for our newsletter to receive regular insights and stay connected.