# Jeff Adler — jads.app > Director of Engineering at Dropbox leading Dash, the AI-powered universal search product. Engineering leader with 12+ years building and scaling platforms at Google, Reddit, and Dropbox. Specializes in AI products, LLMs, Claude/Anthropic, agentic orchestration, mobile architecture, and engineering org design. Based in Denver, CO. Disambiguation: this is Jeff Adler the software engineering leader at Dropbox (Dash), based in Denver, Colorado. He is not the CrossFit Games athlete, the actor, or the academics of the same name. ## Key Facts - Full name: Jeff Adler (also goes by jadler, jads) - Current role: Director of Engineering at Dropbox since 2025, leading the AI Experiences and Sync engineering orgs; owns Dash - Prior roles: Senior Engineering Manager, Dropbox (2023-2025, Dash); Staff Engineer, Reddit (2021-2023, iOS tech lead for 100+ engineers, built SliceKit); Staff Engineer, Dropbox (2019-2021); Senior Engineer, Google (2016-2019, Google Drive iOS); Software Engineer, Maptext (2014-2016, mPilot aviation) - Education: Rutgers University, B.S. Computer and Electrical Engineering - Location: Denver, Colorado, USA - Expertise: AI products, LLMs, Claude/Anthropic, agentic engineering and orchestration, machine learning, iOS architecture, engineering leadership - Open source: Minerva, an iOS architecture framework (github.com/MinervaMobile) ## About - [Portfolio](https://jads.app/): career, hobbies, and an embedded AI chat (Jadbot) that answers questions about Jeff - [About / FAQ](https://jads.app/about): canonical bio and frequently asked questions about Jeff - [Now](https://jads.app/now): what Jeff is focused on right now - [LinkedIn](https://linkedin.com/in/jeff-adler-2bbb9828) - [GitHub](https://github.com/adlerj): @adlerj - [X / Twitter](https://x.com/JadlerOS): @JadlerOS - [Wikidata](https://www.wikidata.org/wiki/Q139972437): entity Q139972437 ## Topics - [Agentic Engineering](https://jads.app/writing/agentic-engineering): Jeff Adler on agentic engineering: how AI moves the job from writing code to reviewing it, and what that does to teams, orgs, and products. - [Engineering Leadership](https://jads.app/writing/engineering-leadership): Jeff Adler on engineering leadership: the IC-to-manager shift, leading through examples instead of mandates, and running teams in the AI-native era. - [iOS Architecture at Scale](https://jads.app/writing/ios-architecture): Jeff Adler on iOS architecture at scale: declarative UI, modularization, build times, and the platform decisions that compound over years. ## Blog - [Jads Blog](https://jads.app/blog): essays on engineering leadership, AI, agentic development, and iOS architecture - [RSS feed](https://jads.app/feed.xml) - [Full post bodies for LLMs](https://jads.app/llms-full.txt): every post's complete text in one document ## Posts - [Adopt the Agent. Build the Loop.](https://jads.app/blog/adopt-the-agent-build-the-loop) (2026-05-29): Everyone is debating Cursor vs Claude Code. Wrong fight. The agent is a commodity. The only thing worth building is the loop around it. - [The Manager Layer is Next](https://jads.app/blog/the-manager-layer-is-next) (2026-05-16): AI isn't replacing managers. It's exposing which ones were never load-bearing to begin with. - [Tokenmaxxing Is What Happens When You Measure Wrong](https://jads.app/blog/tokenmaxxing-is-what-happens-when-you-measure-ai-adoption-wrong) (2026-05-15): Mandating AI tool usage is correct. Measuring it is a trap. The right move is to measure outcomes, not inputs. - [Relaunching This Blog for the AI Era](https://jads.app/blog/relaunching-this-blog-for-the-ai-era) (2026-03-04): Jeff Adler's engineering blog, eight years of iOS architecture and leadership. Now relaunching for the AI era. - [The Year the Agent Stopped Being a Demo](https://jads.app/blog/the-year-the-agent-stopped-being-a-demo) (2025-12-16): 2025 was the year agents went from demo to operational. Some 2024 predictions held. Some didn't. Three bets for 2026, and the gap that hasn't closed. - [AI Is Redefining What \"Senior Engineer\" Means](https://jads.app/blog/ai-is-redefining-the-senior-engineer) (2025-11-07): Senior engineer used to mean better code. AI is redefining it to mean system design, taste, and judgment. A Dropbox director's take. - [What Two Years of Agentic Coding Did to My Org Chart](https://jads.app/blog/what-two-years-of-agentic-coding-did-to-my-org-chart) (2025-10-28): Sixteen months after the agent-managers thesis, here's what actually happened to my org chart. Some held up. Some didn't. Hiring shifted hardest. - [Your Agent's Bottleneck Is Your Documentation](https://jads.app/blog/your-agents-bottleneck-is-your-documentation) (2025-08-12): GPT-5 landed muted. The model layer is stabilizing. The differentiator moved one layer down to your information architecture for agents. - [Voice Is Going to Fail for the Same Reason Chat Did](https://jads.app/blog/voice-is-going-to-fail-for-the-same-reason-chat-did) (2025-05-28): Voice as a default surface is failing the way chat did. Voice as an embedded wedge is the actual win, and the early-2025 data already shows it. - [AI Makes You 3x Faster, Then Review Explodes](https://jads.app/blog/ai-makes-you-3x-faster-then-review-explodes) (2025-04-04): AI tools help Dropbox engineers ship 3-5x faster, but without the right processes you just create a traffic jam at code review. - [Reasoning Is a Commodity Now](https://jads.app/blog/reasoning-is-a-commodity-now) (2025-02-26): DeepSeek R1 and Claude 3.7 made reasoning a commodity in five weeks. The architectural question moves from which provider to where you absorb the cost. - [Should We Write Code for LLMs Now?](https://jads.app/blog/should-we-write-code-for-llms-now) (2025-01-24): If LLMs increasingly read and modify our code at Dropbox, should our conventions optimize for them instead of humans? - [Your User Is Not You](https://jads.app/blog/your-user-is-not-you) (2024-12-16): The biggest AI product mistake of 2024 was shipping for ourselves. Users don't know what to prompt and bounce on the first reply. Empathy gap is PMF gap. - [Agentic Workflows Are Harder Than You Think](https://jads.app/blog/agentic-workflows-are-harder-than-you-think) (2024-10-11): The gap between an impressive agent demo and production at Dropbox is enormous. Here's what bridging it actually takes. - [Commit Your Specs (We're Almost There)](https://jads.app/blog/commit-your-specs-were-almost-there) (2024-09-27): o1 is the first model where the spec might be the load-bearing artifact, not the code. I am hesitant. The QA bar this requires is one the industry hasn't built. - [From Copilot to Pipeline](https://jads.app/blog/from-copilot-to-pipeline) (2024-07-30): Cursor and Copilot are the trust-but-verify phase of AI coding. The next phase is a pipeline of agents that writes the code while you review. - [Engineers Are Becoming Agent Managers](https://jads.app/blog/engineers-are-becoming-agent-managers) (2024-06-07): AI is flattening the engineering output curve at Dropbox. Engineers are managing agents now. Org structures need to change. - [Stop Picking Models. Pick What's Stable Around Them.](https://jads.app/blog/stop-picking-models-pick-whats-stable-around-them) (2024-03-28): Claude 3 dethroned GPT-4. Devin redefined the agent. Teams that hardcoded a model are scrambling. The architecture that survives picks anything but the model. - [Stop Building Chat. Your Users Don't Want Another Box.](https://jads.app/blog/stop-building-chat-your-users-dont-want-a-box) (2024-02-14): Every B2B company is racing to bolt an "Ask AI" chat onto their product. Most users bounce on the first reply. The chat box is product engineering laziness. - [Staff to Senior Manager: 90% the Same Job](https://jads.app/blog/staff-to-senior-manager-90-percent-same-job) (2023-11-15): I went from Staff Engineer to Senior Engineering Manager at Dropbox in three months and was surprised how much I was already doing. - [What I Got Wrong About RAG](https://jads.app/blog/what-i-got-wrong-about-rag) (2023-09-15): RAG isn't what makes your AI product good -- retrieval quality is. Most teams learn that the hard way by optimizing the wrong layer first. - [Shipping AI When Nothing Works Yet](https://jads.app/blog/shipping-ai-when-nothing-works-yet) (2023-08-25): The messy reality of shipping LLM-powered features at Dropbox with real users, real latency budgets, and a cost model that doesn't work. - [The Evaluation Gap Is the AI Gap](https://jads.app/blog/the-evaluation-gap-is-the-ai-gap) (2023-07-28): Teams that build real eval infrastructure first ship better AI products -- not because they have better models, but because they know when their model is wrong. - [Prompt Engineering Is Not a Job](https://jads.app/blog/prompt-engineering-is-not-a-job) (2023-06-13): Hiring a prompt engineer is a category error. The real job is eval design, statistical rigor, and infrastructure -- and no one is posting that JD. - [Latency Is a Feature Decision, Not an Infrastructure Problem](https://jads.app/blog/latency-is-a-feature-decision) (2023-04-21): How you handle latency determines whether users trust your AI product. Make that decision at design time, not in production. - [ChatGPT Just Made AI a Product Engineering Problem](https://jads.app/blog/chatgpt-just-made-ai-a-product-engineering-problem) (2022-12-08): ChatGPT launched eight days ago. Mobile engineers thinking "this doesn't affect me" are wrong. The product engineering reset starts here. - [Mandates Fail, Examples Win](https://jads.app/blog/mandates-fail-examples-win) (2022-11-04): Scaling engineering practices to a large iOS org. Why mandates fail and consistency comes from tooling, not enforcement. - [Aggressive iOS Version Drops Are a Platform Mistake](https://jads.app/blog/aggressive-ios-version-drops-are-a-platform-mistake) (2022-09-27): iOS 16 shipped two weeks ago. Most teams about to drop iOS 14 are trading short-term cleanup for long-term user pain. Stage features, don't drop versions. - [We Ditched HLS and Cut Playback Errors by 22%](https://jads.app/blog/ditching-hls-cut-playback-errors-22-percent) (2022-08-12): How I rebuilt Reddit video playback by ditching HLS for an LRU-based prefetch cache, cutting playback errors meaningfully. - [SwiftUI 4 Is Production-Ready. For Some of You.](https://jads.app/blog/swiftui-4-is-production-ready-for-some-of-you) (2022-06-17): WWDC 2022 closed the biggest SwiftUI gaps. SwiftUI 4 works in production. For greenfield. Mixed-mode is the right call for everyone else. - [SliceKit: Composition and Testing (Part 2)](https://jads.app/blog/slicekit-part-2-composition-and-testing) (2022-05-06): How SliceKit's composition model works in practice, plus the testing strategy that got the Reddit iOS org on board. - [Modularization Is a Migration, Not a Decision](https://jads.app/blog/modularization-is-a-migration-not-a-decision) (2022-04-14): Most mobile orgs treat modularization as a Q3 project. It's actually a multi-year migration with org-design implications. Treat it like infra. - [SliceKit: Declarative UI at Reddit (Part 1)](https://jads.app/blog/slicekit-part-1-declarative-ui-at-reddit) (2022-03-18): How I built a declarative UI framework for the iOS org at Reddit, and why consistency at scale requires opinionated tooling. - [The Build-Time Tax Is the Most Underpriced Cost in Mobile](https://jads.app/blog/build-time-tax-is-the-most-underpriced-cost-in-mobile) (2022-02-22): At 100+ engineer mobile orgs, build time is the single biggest tax on engineering productivity and the most under-invested area on every roadmap I see. - [Apple Silicon Cut My Mobile Build Times in Half](https://jads.app/blog/apple-silicon-cut-my-mobile-build-times-in-half) (2021-12-09): Six weeks on an M1 Pro and my real iOS build runs roughly twice as fast as the 2019 Intel MacBook it replaced. The laptop-refresh ROI writes itself. - [Why I Left Dropbox for Reddit](https://jads.app/blog/why-i-joined-reddit) (2021-11-19): After three years at Dropbox, I joined Reddit to lead iOS platform engineering for the 12th most-visited website. - [iOS 15 Made Privacy a Product Engineering Problem](https://jads.app/blog/ios-15-made-privacy-a-product-engineering-problem) (2021-10-21): iOS 15 plus ATT turned privacy from compliance into product engineering. Teams treating it as legal-team work are losing revenue this quarter. - [Swift Concurrency Changes How You Hire iOS Engineers](https://jads.app/blog/swift-concurrency-changes-how-you-hire-ios-engineers) (2021-08-18): WWDC 2021 shipped async/await and Actors. Most iOS hiring rubrics still test for legacy GCD. The teams that update their interviews are the ones that win. - [The Best Frameworks Come from Product Engineers](https://jads.app/blog/best-frameworks-come-from-product-engineers) (2021-06-25): The best mobile frameworks come from product engineers solving their own problems at Dropbox, not platform teams building in a vacuum. - [Cross-Platform Code Is a Tax You Pay Twice](https://jads.app/blog/cross-platform-code-is-a-tax-you-pay-twice) (2021-05-06): The default reflex is to share iOS and Android code to save effort. Most teams pay that effort twice: once in the abstraction, once in the special-cases. - [We Shipped SwiftUI. It Crashed 1% of Users.](https://jads.app/blog/swiftui-gave-us-a-1-percent-crash-rate) (2021-03-12): We rolled out SwiftUI to a slice of Dropbox users and hit a 1% crash rate. Here's why we chose UIKit and declarative frameworks instead. - [A Year of Remote Engineering, Now What](https://jads.app/blog/a-year-of-remote-engineering-now-what) (2021-02-24): Twelve months ago I said remote was better for deep work but worse for everything else. A year of data later, the take mostly held, with two things I got wrong. - [Six Weeks on M1: The iOS Engineering Verdict](https://jads.app/blog/six-weeks-on-m1-the-ios-engineering-verdict) (2020-12-15): Six weeks on an M1 Mac mini. iOS engineering verdict, build times noticeably faster, fans silent, Rosetta absorbing the tooling tax. Refresh in 2021. - [GPU Shaders Gave Us a 10x on Document Scanning](https://jads.app/blog/gpu-shaders-gave-us-a-10x) (2020-11-20): How my team at Dropbox achieved a 10x performance gain in mobile document scanning by moving from CPU-bound C++ to GPU shaders. - [iOS 14's One-Day Launch Was a Platform Mistake](https://jads.app/blog/ios-14s-one-day-launch-was-a-platform-mistake) (2020-09-24): Apple shipped iOS 14 with less than 24 hours' notice. The widget-launch chaos was a structural process failure, not a pandemic-driven one-off. - [Apple Silicon Is the Real Story of WWDC 2020](https://jads.app/blog/apple-silicon-is-the-real-story-of-wwdc-2020) (2020-07-14): WWDC 2020 had iOS 14, widgets, Big Sur. The story was none of those. Apple Silicon is the biggest mobile-engineering hardware shift this decade. - [Remote Is Better for Deep Work](https://jads.app/blog/remote-is-better-for-deep-work-but) (2020-06-19): Remote is more productive for deep work at Dropbox. In-person unlocks everything else. CI/CD becomes your most important teammate. - [The Contact Tracing API Is a Mobile Platform Inflection](https://jads.app/blog/the-contact-tracing-api-is-a-mobile-platform-inflection) (2020-04-21): Apple and Google's COVID Exposure API isn't really about contact tracing. It's two OS makers cooperating on a privacy protocol in 11 days. - [Acquisition to App Store in Three Months](https://jads.app/blog/acquisition-to-app-store-in-three-months) (2020-03-13): How my team at Dropbox shipped HelloSign Mobile in three months post-acquisition by finding the right boundary between web and native. - [Mac Catalyst Is Not Ready Yet](https://jads.app/blog/mac-catalyst-is-not-ready-yet) (2020-02-05): Six months after Catalyst shipped, the production verdict is in. "Check a box in Xcode" collapses on platform conventions. Don't ship a Catalyst app in 2020. - [Breaking Apart an iOS Monolith](https://jads.app/blog/breaking-apart-an-ios-monolith) (2019-12-06): How I broke apart a Dropbox iOS monolith using protocol-first design, turning a tangled dependency graph into independent modules. - [The Declarative Skeleton That Cut Code by ~40%](https://jads.app/blog/declarative-skeleton-42-percent-less-code) (2019-10-25): How I built a declarative app skeleton that eliminated boilerplate, cut code substantially, and made test coverage a byproduct of good architecture. - [Five RxSwift Patterns That Actually Work](https://jads.app/blog/five-rxswift-patterns-that-actually-work) (2019-07-19): Five practical RxSwift patterns for well-architected iOS apps, from reactive mutable lists to the retain cycle trap nobody warns you about. - [Minerva: The Coordinator Pattern Done Right](https://jads.app/blog/minerva-part-3-coordinator-pattern) (2019-05-10): Part 3: Testable navigation by separating what to present from how to present it. Deep linking becomes a natural consequence. - [Minerva: Kill Your Imperative List Code](https://jads.app/blog/minerva-part-2-declarative-lists) (2019-03-22): Part 2: CellModels turn iOS list management from imperative data source manipulation into declarative state descriptions. - [Minerva: An iOS Framework Nobody Asked For](https://jads.app/blog/minerva-part-1-coordinators-and-lists) (2019-02-08): Part 1: Why I built an open-source iOS coordinator and list framework, what existing solutions get wrong, and the core protocol. - [Google to Dropbox: Smaller Scale, Higher Velocity](https://jads.app/blog/google-to-dropbox-smaller-scale-higher-velocity) (2019-01-18): Moving from Google to Dropbox meant smaller scale but higher velocity. Embracing open source changed what was architecturally possible. - [Leaving Google After Two and a Half Years](https://jads.app/blog/leaving-google) (2018-11-02): After building iOS at Google, I'm moving on. What I learned about massive refactors, build systems, and when a company is too big. - [VIPER Is Half Dead in Modern Swift](https://jads.app/blog/viper-is-half-dead-in-modern-swift) (2018-07-14): VIPER was a breakthrough in iOS architecture, but modern Swift makes half its layers unnecessary. A protocol-driven alternative. - [iOS Architecture at Google](https://jads.app/blog/ios-architecture-at-google) (2018-03-22): What iOS development looks like inside Google: internal promises frameworks, years resisting Swift, and everything built from scratch. - [Inside iOS at Google Scale](https://jads.app/blog/building-ios-at-google-scale) (2018-01-19): Inside the build system, source control, and tooling that powers iOS development at Google, and why long builds change everything.