Course Overview
Generative AI is an exciting frontier in artificial intelligence, enabling the creation of new data, automated content, and enhanced user experiences across industries. Its capabilities drive efficiency and innovation, allowing developers to produce dynamic content, generate code and documentation, improve user interfaces, and design custom recommendations. By harnessing generative AI, developers can build efficient, tailored solutions for various applications.
Generative AI for Developers is a three-day, hands-on course designed for experienced programmers ready to master generative AI techniques and tools. This intensive program will transform your approach to software development, equipping you to generate code, create documentation, automate testing, enhance UI/UX, and develop adaptive content. With companies like NVIDIA, OpenAI, and Google leading the way, generative AI is setting new standards for innovation.
Throughout the course, you'll work with advanced AI models such as GANs, VAEs, and Transformers, enabling you to produce content, documentation, and tests, personalize user interfaces, and deploy AI-driven solutions. The curriculum covers everything from foundational principles to advanced applications, including ethical AI practices, with hands-on labs where you'll develop applications utilizing AI.
Who should attend
The ideal audience for this intermediate and beyond level course consists of experienced software developers, programmers, and engineers who are eager to learn and adopt cutting-edge generative AI techniques in their projects. The course is tailored for experienced professionals with a background in programming and a basic understanding of artificial intelligence and machine learning concepts.
Attendee roles might include:
- Software Developers/Programmers: Those wanting to integrate AI into tasks like code generation, documentation, and testing.
- UI/UX Designers: Professionals interested in creating dynamic, adaptive interfaces using AI.
- Technical Product Managers: Managers looking to enhance AI-driven products.
- Technical Team Leads: Leaders seeking innovative ways to incorporate generative AI into team projects.
Prerequisites
This course is highly technical in nature. In order to gainthe most from attending you should possess the following incoming skills:
- Experience with software development languages and platforms (C++, Java, C#, or HTML/Javascript)
- Basic understanding of artificial intelligence and machine learning concepts (supervised and unsupervised learning, neural networks, optimization techniques)
Course Objectives
Working in an interactive learning environment, led by our engaging AI expert you'll:
- Build a solid understanding of generative AI techniques and their applications in software.
- Gain hands-on experience with popular models,including GANs, VAEs, and Transformers.
- Learn to utilize AI as your paired programming partner
- Gain hands on experience creating AI assisted requirements, design, code and tests
- Address ethical, legal, and safety considerations of generative AI, including bias mitigation and responsible content generation.
Outline: Generative AI for Developers (TTAI2305)
Introduction to Generative AI
- Understand generative AI concepts and applications.
- Trace the evolution of generative AI technologies.
- Identify types of generative models and their uses.
- Learn key concepts: machine learning, neural networks, transformers.
- Review popular generative models like GPT and Codex.
Introduction to Prompt Engineering
- Explore prompts' role in guiding AI outputs.
- Craft effective prompts for various tasks.
- See how prompt specificity shapes results.
- Experiment with prompt variations for desired outcomes.
Deep Dive into AI Models
- Understand architectures of popular AI models.
- Ask, Edit, or Agent mode
- ChatGPT, Claude sonnet, Grok
- Evaluate free and premium models for AI assisted development
- Utilize AI assisted coding in your IDE
- Assess model performance and limitations.
The SDLC and Environment
- Setting up your development environment
- Understanding the SDLC
- Choosing tools and AI models
- Establishing rules for iterative development
Developing Application Requirements
- Step 1 – creating a product objectives document
- Step 2 – Create User Stories (use-cases) for critical features
- Step 3 – Review
Architecture
- AI assisted design
- Using mermaid to depict architecture
- Generating design documents
AI Assisted Design
- AI assisted test-driven design
- Creating an object-model
- AI generated documentation and mermaid diagrams
AI Assisted Coding
- Inline code assistance
- Agent mode coding
- Guiding the development process
AI Assisted Testing
- Generating Integration and System Tests
- Role of AI in test coverage and reliability
- Automating the test process
Security
- Using AI driven code-reviews
- Identifying and mitigating security risks
- Enforcing best practices
- Monitoring applications
Integrating AI in to Applications
- Utilizing LLMs in applications
- Avoiding security risks
- Validation
- Prompt engineering
Ethics and Responsible AI
- Explore ethical considerations in generative AI.
- Detect and address biases in AI content.
- Apply best practices for privacy and fairness.
- Understand regulatory impacts of generative AI.