Using LLMs for Software Engineering
Published by O'Reilly Media, Inc.
Leveraging the application of LLMs for research and implementation
Course outcomes
- Use Google Gemini or a similar LLM for research and implementation as a software engineer
- Evaluate and verify Gemini’s or similar LLMs’ answers to produce credible, useful work
- Navigate and understand larger contexts to make best use of LLM results
Course description
Google Gemini, ChatGPT, and other applications of large language models have become mainstream options for generating code and text. But what does that mean for software engineers?
Join expert Chelsea Troy to understand how software engineers can best leverage these technologies and the skills you need to get the most out of these tools.
What you’ll learn and how you can apply it
- Improve your literacy with Gemini and similar LLMs
- Understand how LLMs work and differentiate Gemini from ChatGPT
- Practice skills for prompt engineering and LLM output evaluation
This live event is for you because...
- You’re a software engineer who wants to use Bard or another LLM to improve your work and stay competitive.
Prerequisites
- Some software engineering experience
Recommended preparation:
- Have Google login credentials to use Gemini and OpenAI login credentials to use ChatGPT (optional, to complete exercises)
Recommended follow-up:
- Take How to Choose the Right LLM for your Application (live course)
Schedule
The time frames are only estimates and may vary according to how the class is progressing.
Using LLMs for software engineering (15 minutes)
- Presentation: Getting a draft for things like code, analysis, and brainstorming; effectiveness on small-scope problems; lack of context and inaccuracy
What is Gemini and how does it work? (55 minutes)
- Presentation: Implementation details; brief history; comparison to ChatGPT; advantages of Gemini for software engineering and technical work; privacy issues
- Hands-on exercises: Identify the purpose of a specific line of code; find the lines of code that do a specific thing; explain code; streamline code; write code; identify the implications of the code
- Q&A
- Break
Skills for software engineers while working with LLMs (60 minutes)
- Presentation: Prompt engineering; code evaluation and analysis; verification of results via quick feedback loops
- Group discussion: Prompts and questions LLMs might or might not be good for and why
- Q&A
- Break
Skills for software engineers that support working with LLMs (40 minutes)
- Presentation: Mapping entire repository systems; understanding the history of specific files; evaluating supporting evidence for claims (scientific rigor evaluation); what else you can add to the equation; anecdotal evidence and experience
Wrap-up and Q&A (10 minutes)
Your Instructor
Chelsea Troy
Chelsea Troy leads the machine learning operations team at Mozilla. She also teaches in the Master’s Program in Computer Science at the University of Chicago. Her online workshop, Fundamentals of Technical Debt, is available On Demand through the O’Reilly platform, and she also gives live courses about machine learning, large language models, and product thinking.