TOPIC
Monorepo
These are the same questions found in the library, grouped here by the capability each one mainly examines.
15 questions
A · Professional problem solving and implementation15
- A repository accepts external contributions, and CI runs build scripts, reuses caches, reads test credentials, and produces release artifacts. How would you separate untrusted execution, credential permissions, and cache boundaries so code cannot read secrets or poison trusted artifacts?
- A company’s frontend projects live in separate repositories, and someone proposes merging them into a monorepo. How would you decide whether to do it, and how would you validate it in steps?
- After code changes, the build system sometimes misses affected apps and sometimes rebuilds the entire repository. How would you validate the dependency graph and cache invalidation rules?
- One repository contains multiple teams and production deployment config, but code-owner rules do not cover temporary admins and automation accounts. How would you review permission and approval boundaries?
- Two product packages form a dependency cycle, and splitting them creates a need to share domain types. How would you change the boundaries without hiding the cycle in a new shared package?
- A team decides to split a large repository, but history, CI, package releases, and ownership are connected. How would you sequence the migration?
- In a monorepo, shared packages are casually changed by one team, while consumers discover behavior changes only after upgrading. How would you establish ownership and compatibility contracts?
- Packages have very different release cadences, but shared version numbers force unrelated teams to release together. How would you design versioning and release policy?
- The repository has hundreds of packages and full CI is slow. The team wants to test only “affected” areas. How would you prove selective testing does not miss critical dependencies?
- An organization must move several repositories from an old CI system to a new platform without pausing delivery across teams. How would you sequence migration and decide which repositories enter each wave?
- Teams share a repository but release at different cadences; shared package changes often block unrelated teams. How would you design boundaries, impact analysis, and release agreements?
- The same release behaves differently across clusters, and configuration changes are not fully audited. How would you establish configuration sources, drift detection, and rollback?
- A shared library releases a backward-compatible version, but application repositories cannot upgrade promptly because of pinned dependencies, generated code, or different release windows; a security fix remains blocked. How would you design compatibility policy and the dependency-upgrade process?
- The same commit passes reliably on a developer's machine but occasionally fails in CI because of time zones, random ordering, shared caches, or parallel races. How would you classify, reproduce, and reduce this nondeterminism?
- A backend API generates TypeScript, Java, and Swift SDKs, but nullable types, enums, and error models are drifting across languages. How would you design the contract source, generation process, and cross-language compatibility tests?
No questions in this section match your target. ·