The Top Skills Every Developer Needs for the Industrial Revolution of AI
@Geekwire Summit - "AI Gets Real"

The Top Skills Every Developer Needs for the Industrial Revolution of AI

There is no lack of commentary flying around about how AI will change everyday life and the shortened time it will take to get things done. Here at GitHub, we view software development as the central component of community and enterprise innovation. I’ll be talking a lot more about that on November 9th during my Day Two mainstage keynote for our annual developer conference Universe.

In the meantime, I’ve been on the road. During last week’s GeekWire Summit panel: AI Gets Real, I presented about how we all need to be thinking bigger than applying AI for code complete. AI is going to transform the entire landscape of software development and how each developer will contribute to human progress. I received an audience question near the end of the session, and I can’t stop thinking about its importance.

Lesson 1: Keep asking questions & keep learning

This audience member, himself a student at the University of Washington, asked me what Computer Science & Computer Engineering students should study today to improve their likelihood to succeed in this new AI era. I was immediately delighted to respond, because this is the exact conversation I have with my college-aged son, along with enterprise customers staffing for the future of AI.

“Don’t just learn how to write code, and don’t just learn a language,” I said, in so many words. “Assume that the language is just a tool that you have in your toolbox. Understand the tools along with systems overall by learning data science, mathematical behavior, and how a computer works. You need to have a broader understanding of the systems that you’re using.”?

Lesson 2: Accept the pros and cons of generalized AI

The pace of change from AI is rapid. Developers will need to commit to learning continuously, staying updated on the latest advancements in AI, and learning to apply holistic systems thinking to solve problems.?

Gone are the days of applying specialized AI models for highly unique use cases. We’ve entered what I call the Industrial Revolution for AI, bringing generalized AI models into fashion. If we’re going to apply generalized AI from OpenAI or others effectively, we need to know our systems and challenges enough to customize AI for our unique systems. That’s exactly what GitHub has done: we have applied our domain expertise around the full software development lifecycle to the generalized AI movement. To stay relevant, students and future developers should learn to approach AI in the same way.

As my son might challenge me: OK, but which specific skills help support systems thinking??

Let’s dig in.

Lesson 3: Learn the top skills needed for systems thinking

Here is my checklist of five categories of skills that all software developers will need in the Industrial Revolution of AI:

Learn to handle your data

  • Data Handling and Data Engineering: Developers will need to collect, preprocess, and manage data effectively to train and deploy AI models.

Deepen your understanding of AI

  • Machine Learning and Deep Learning: Developers will increasingly require skills in machine learning and deep learning to build and fine-tune AI models. Understanding the principles of these technologies will be essential.
  • Natural Language Processing (NLP): Developers who work on applications involving text and language will need to understand NLP techniques and libraries to create chatbots, language translators, and sentiment analysis tools.?
  • AI Integration: Developers will need to understand how to integrate AI and machine learning components into their applications. This involves knowledge of AI libraries, APIs, and frameworks.
  • AI Debugging and Optimization: Debugging AI models and optimizing them for performance will become a specialized skill. Developers will need to understand how to diagnose and correct issues in AI systems.
  • AI Security: Ensuring the security of AI systems will be vital. Developers will need to protect AI models from adversarial attacks and data breaches.
  • Computer Vision: For developers working on applications that involve image and video processing, knowledge of computer vision and image recognition will be important.

Learn how to optimize hardware?

  • AI Hardware Acceleration: How to design and optimize hardware components, such as GPUs (Graphics Processing Units), TPUs (Tensor Processing Units), and FPGAs (Field-Programmable Gate Arrays), for AI model training and inference. Hardware acceleration for AI will become a critical skill.
  • AI Chip Design: There is a growing need for specialized AI chips, and computer engineers will be involved in their design and development. Knowledge of ASIC (Application-Specific Integrated Circuit) design and AI chip architecture will be valuable.
  • AI-Optimized System Architectures: creating hardware systems that are optimized for AI workloads, including memory hierarchies, interconnects, and distributed computing architectures.
  • Embedded AI: As AI moves to edge devices, understand how to embed AI capabilities into IoT devices, robotics, autonomous vehicles, and other edge computing platforms.
  • AI and Quantum Computing: Understanding the intersection of AI and quantum computing will be vital. Quantum computers have the potential to revolutionize AI by solving complex problems much faster than classical computers.

Study beyond coding

  • AI Ethics and Responsible Development: As AI technologies raise ethical concerns, developers will need to be well-versed in AI ethics and responsible AI development practices.
  • Explainable AI: Understanding how to make AI models more interpretable and explainable will be crucial, especially in regulated industries and applications where transparency is essential.

Challenge yourself to new collaborations

  • Interdisciplinary Skills: Collaboration with experts in other domains will become more common. Developers will need to understand the language and requirements of domains like healthcare, finance, and automotive when building AI solutions for those sectors.
  • Cross-Functional Collaboration: Collaboration with data scientists, machine learning engineers, and AI specialists will be common. Developers will need to work effectively in multidisciplinary teams.
  • Deployment and Scaling: Developers will need to understand how to deploy AI models at scale, taking into account factors like cloud computing, containerization, and serverless architectures.

Overall, software developers will need to embrace AI as a complementary technology to enhance their software applications and systems. Those who acquire the necessary AI-related skills and knowledge will be better positioned to create innovative and competitive solutions in the era of AI.?

As my prediction: in the era of AI, hardware design and computer engineering will be an exciting field with a strong emphasis on hardware-software co-design, optimization, and the development of specialized hardware solutions to support AI workloads across industries. Staying up to date with AI advancements and understanding the synergy between AI and hardware will become a competitive edge for any software developer.?

Please keep asking me questions like this. I’m having fun helping the software developers of today and tomorrow! Register here to virtually attend my Day Two Universe 2023 keynote on Thursday, November 9th, 2023.

Deepthi Rao Coppisetty

-Woman-Mother-Disruptor- Leading GitHub’s Fundamentals Program governing Availability, Security and Accessibility to ensure our Products and Services are Built Right for All Users!

11 个月

Love this article Inbal S.! It covers several aspects on AI and intorduces new concepts that I didn’t know and didn’t connect with AI. ??

Reiko Rogers

Senior Director, Operations at Favor | Last Mile Logistics ? S&OP? Process Improvement ? Program Management | PMP, CSM, NCML&AI | Ex-Amazon

11 个月

Great article with realistic and actionable insights!

要查看或添加评论,请登录

社区洞察

其他会员也浏览了