Upgrade to Pro — share decks privately, control downloads, hide ads and more …

202604-14_API_Days_Singapore.pdf

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Michael Isvy Michael Isvy
April 15, 2026
79

 202604-14_API_Days_Singapore.pdf

Avatar for Michael Isvy

Michael Isvy

April 15, 2026

Transcript

  1. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Who we are 2 Michael Isvy Head of Engineering Zenika Singapore Jai Prakash Team Lead Zenika Singapore
  2. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Please give us a show of hands! 3 • Are you a developer? • Do you use GitHub Copilot at work? • Do you use Claude Code at work? • Have you implemented a full agentic workflow with custom agents and an orchestrator? MI
  3. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    All of the following is based on real life experiences 4 • AI Driven Dev engagements • Project implementation or Consulting work JP
  4. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Our starting point 5 • Your team has been busy firefighting • Has been using GitHub Copilot on and off • Department Head gives you one month to implement a full agentic workflow MI
  5. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Our Learning Journey 6 Understand the power of Custom Rules and Instructions Migrate our Legacy code Build an Agentic AI workflow for new features You are here! 1 2 3 MI
  6. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Using Custom Instructions 7 • Start on a Pet project ◦ Your real-life project is too complex • Define some instructions for your project • Try generating code ◦ Until code looks exactly like what you’re expecting! JP # Packages - should be split by domain, not layer (we use DDD style) - Inside folder 'greenfield-backend' or 'brownfield-backend', always use a subfolder of `com.petclinic` package for new Java classes # Backend Coding practices - as much as possible, functions should be single responsibility. If a function is doing more than one thing, split it into several functions - for Repository/Service/Controller, use method action words such as `find`, `save`, `delete`. Do not use 'create' or `remove` custom-instructions-java.md
  7. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    3 Principles / Takeways 8 • You’re the Pilot, not the Copilot ◦ Don’t let the AI decide what your code should look like • Code is a throwable artifact ◦ Keep rejecting and generating again until you’re fully satisfied • Share instructions as a team ◦ Instructions should be agreed on at team level ◦ Commit them to git! MI
  8. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Tools when defining coding practices (optional) 9 • Get inspiration from the below tools ◦ Don’t copy/paste them blindly! • Awesome Copilot (GitHub Copilot) ◦ https://github.com/github/awesome-copilot • Awesome Claude (Claude Code) ◦ https://github.com/hesreallyhim/awesome-claude-code MI
  9. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Our Learning Journey 10 Understand the power of Custom Rules and Instructions Migrate our Legacy code Build an Agentic AI workflow for new features You are here! 1 2 3 MI
  10. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Migrating Legacy Code 11 • Some examples MI Tech Stack Before After Java / Spring Boot Java 8 and Spring Boot 2.7 Java 25 and Spring Boot 4 .Net C# .Net Framework 4.x .Net Core 10.0.5 Frontend React 17 React 19.2.5 Backend (JS/TS) Node.js 14.x Node.js 24.x
  11. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Use real-world examples ◦ https://github.com/gothinkster ◦ Purposely old applications to be migrated ◦ Great for practice! • Many languages available ◦ aspnetcore-realworld-example ◦ spring-boot-realworld-example ◦ golang-realworld-example ◦ node-express-realworld-example Practicing on a separate application 12 MI
  12. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • It is fast to write Automated Tests ◦ As long as you know what good tests look like • It is ok to take multiple steps to migrate ◦ Spring Boot 2.7 -> Spring Boot 3.4 -> Spring Boot 4.0 What you will learn along the way 13 MI
  13. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Some of the things not to ask to the LLM ◦ Fix all linting issues on my project (use Linting in command-line instead with eslint, SonarScanner…) ◦ Analyse code for cyclic dependencies (use ArchUnit in command-line instead) ◦ Ask the LLM to update my Java package paths (use openrewrite in command line instead) Command line tools are your friends 14 JP
  14. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • They are where AI Driven Dev shines the best! ◦ Scope is very clear ◦ Can be 10x compared to doing migrations manually • What we’ve seen: ◦ migration that would have taken 6 months for 3 people ◦ Took one month for one person Conclusion on Tech migrations 15 JP
  15. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Maybe it’s time to tackle the skeletons in the closet ◦ Legacy Database with Stored procedures -> Not scared! ◦ Migrating legacy 1980s language to a modern language -> Not too scared! Next step on Tech migrations 16 MI
  16. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Our Learning Journey 17 Understand the power of Custom Rules and Instructions Migrate our Legacy code Build an Agentic AI workflow for new features You are here! 1 2 3 JP
  17. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Just a Markdown file ◦ Ask Claude Code/GitHub Copilot to generate it for you! Writing Custom Agents is easy 18 Show code name: Frontend description: "Use when implementing, refactoring, or testing React/TypeScript frontend code with strict architecture-frontend compliance, plan-driven execution, and explicit user validation at each step… frontend.agent.md JP GitHub Copilot
  18. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Writing new features is predictable 19 Understand user story and translate into tech requirements Start git - create new branch Create implementation plan Implement Feature Create merge request End Developer very involved Dev to Review/improve Dev to test manually and review Dev to review proposed name git agent backend agent backend agent git agent Dev. to Improve PR wording JP
  19. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Use a PlayWright agent ◦ Updates e2e tests when new feature is added • Agent can run browser and click ◦ See what changed ◦ Update testing script accordingly ◦ Run the test script again and make sure it’s successful Adding End-to-end automated tests 20 JP
  20. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Adding End-to-end automated tests 21 Understand user story and translate into tech requirements Start git - create new branch Create implementation plan Implement Feature Create merge request End git agent backend agent backend agent git agent Run and update e2e tests PlayWright agent Guided thanks to Orchestrator agent JP
  21. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Which type of Documentation? ◦ Technical/Functional documentation ◦ User Guide • Before: we edited doc manually on Confluence ◦ Hard to keep the doc up to date ◦ Extensively manual work ◦ Error prone Adding Documentation (1/2) 22 MI
  22. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • After: Documentation is generated ◦ Everything stored as Markdown files ◦ Agent writes all the documentation ◦ May also handle screenshots ◦ Team-member can review/amend ◦ Once validated, exported to Confluence (read-only) Adding Documentation (2/2) 23 MI
  23. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    Adding End-to-end automated tests 24 Understand user story and translate into tech requirements Start git - create new branch Create implementation plan Implement Feature Create merge request End git agent backend agent backend agent git agent Run and update e2e tests PlayWright agent Guided thanks to Orchestrator agent Update documentation Documentation agent MI
  24. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    AI Driven Dev / Agentic AI at Zenika 25 AI Driven Dev Consulting/Mentoring (1 day/ 2 days) AI Driven Dev Training (1 day/ 2 days) AI Driven Dev End-to-end projects (with our methodology) MI
  25. © ZENIKA 2026 All rights reserved - Proprietary & confidential

    • Zenika has opensourced its workflows • Use them to get started and build your own Workflow! • https://github.com/zenika-dev/Zenflow/ ◦ Feedback welcome! Zenflow: get started with your agentic workflows 26 MI