Sie müssen das gesamte Projekt nicht genau kennen, um es verwalten zu können. In der Regel haben Menschen mit großer, komplexer Software ihre eigenen "Bereiche", die sie betreuen, und sie verfügen nur über ein vorübergehendes Wissen über den Rest des Systems.
SQLite ist im Vergleich zu "großen Softwareprojekten" eigentlich relativ klein, aber wenn Sie sich so etwas wie das Windows-Betriebssystem ansehen, werden Sie Leute haben, die nur am Kernel arbeiten, Leute, die nur an der Shell arbeiten, Leute, die nur arbeiten im Internet Explorer, Leute, die nur mit dem Fenstermanager arbeiten, usw. usw. Jemand, der in der "Shell" arbeitet, kann einen Fehler im Kernel nicht im Handumdrehen beheben.
Es gibt auch den Vorteil, dass sich diese Projekte im Laufe der Zeit weiterentwickeln: Sie haben nicht immer so kompliziert begonnen. Das bedeutet, dass ein neuer Entwickler normalerweise von erfahreneren Entwicklern "geschult" werden kann.
Wenn Sie sich einem großen Entwicklerteam anschließen, erhalten Sie einen bestimmten Aspekt des Projekts, an dem Sie arbeiten müssen (möglicherweise einen Fehler oder eine neue Funktion), und in den ersten paar Iterationen wird ein anderer Entwickler Sie zum "Kumpel". Ihr Kumpel hat ein gutes Verständnis für den Bereich, in dem Sie arbeiten, und kann Ihnen helfen, sich zurechtzufinden.
Bei Open-Source-Projekten wie SQLite ist es tatsächlich etwas schwieriger, da vorhandene Entwickler nicht motiviert sind, neue Entwickler zu "schulen". So werden Sie feststellen, dass Sie ein bisschen mehr alleine sind. Sie finden jedoch weiterhin Hilfe in Entwicklerforen oder Mailinglisten (z. B. wenn Sie eine Frage wie "Ich möchte diese und jene Funktion implementieren" oder "Ich habe Fehler XYZ gefunden, wo soll ich suchen?" irgendeine Form von Hilfe.