AI Content Workflows Offer Lessons for Devs
A podcast with chemical company Evonik reveals how they use an internal "Evonik-GPT" integrated with Adobe tools for content creation. Their focus on brand safety, using AI with licensed stock material, and standardizing output via templates offers parallels for engineering teams adopting AI. The key lessons are the importance of compliance, scaling best practices through templates, and using AI to tailor complexity for different audiences.
The internal "Evonik-GPT" is part of a broader strategy at the chemical company that leverages Adobe's suite of tools. For creative projects, teams use Adobe Photoshop and Premiere with integrated Firefly AI capabilities, while most daily content is produced in Adobe Express, all sourcing brand-safe assets from Adobe Stock. This unified data environment is powered by Adobe's Real-Time CDP, which connects previously siloed systems like Microsoft Dynamics 365 CRM and Adobe Marketo Engage to create dynamic customer profiles. AI coding assistants are rapidly becoming standard in frontend workflows, with a 2025 Stack Overflow survey indicating 70% of developers already use them. Tools are generally categorized as inline assistants like GitHub Copilot for boilerplate, chat interfaces like Claude for exploration, and design-to-code tools like Vercel's v0 which generates React components from prompts or Figma designs. The key is using these tools to augment, not replace, developer expertise—always reviewing AI-generated code before production. The drive for performance optimization in React has led to the React Compiler, which automates the manual work of `useMemo` and `useCallback`. It operates at build time, analyzing code to automatically memoize components and hooks, preventing unnecessary re-renders without cluttering the codebase. This allows developers to write cleaner, more straightforward component code while the framework takes responsibility for making it fast by default. Beyond React, signals-based reactivity offers another path to performance, now used by frameworks like Angular, Solid, and Preact. Unlike React's traditional top-down re-rendering, signals create a fine-grained dependency graph where a state change updates only the specific components subscribed to it. This approach, inspired by frameworks like SolidJS, avoids traversing the entire component tree and can lead to significant performance gains and simpler state management. For computationally heavy tasks, frontend is increasingly turning to WebAssembly (Wasm). Because Wasm provides a binary instruction format that runs at near-native speed, it's ideal for use cases like browser-based video editing, gaming, and complex data visualization. Major applications like Figma and Disney+ already use WebAssembly to deliver high-performance experiences directly in the browser, offloading intensive operations from the main JavaScript thread. The transition from a senior IC to an Engineering Manager is a fundamental career change, shifting focus from writing code to enabling the team's output. The first 90 days are critical for establishing routines like weekly 1-on-1s to understand team members' goals and concerns. A common mistake is trying to continue coding full-time, which prevents new managers from developing essential skills in delegation, feedback, and strategic planning. Effective engineering leadership at larger companies requires balancing technical credibility with people management. While a Tech Lead focuses on code quality, architecture, and project execution, an Engineering Manager's primary role is people-centric: career development, performance reviews, and protecting the team from distractions. As leaders scale, their success becomes less about their own technical contributions and more about their ability to align the team's work with broader business goals. Building internal tools with a strong developer experience (DX) hinges on excellent API design. Key principles include consistency in naming conventions and data formats, comprehensive documentation with clear examples, and structured error handling. A well-designed API is intuitive and hard to misuse, which increases adoption and reduces the support burden on the library's authors.