Comment apprendre à concevoir des systèmes informatiques distribués à grande échelle comme ceux qu’utiliserait Amazon ou Netflix


Il existe des livres comme "The Art of Scalability", "Scalability Rules", "Scalable Internet Architectures" et "Distributed Systems : Principles and Paradigms". Vous pouvez également lire les blogs d'ingénierie d'organisations comme Netflix, Amazon, LinkedIn et Twitter. Le blog High Scalability - a beaucoup d'articles et d'études de cas.

En définitive, cependant, la seule façon d'apprendre est de le faire. C'est-à-dire en travaillant quelque part où vous avez l'occasion de travailler sur l'ingénierie de tels systèmes. Vous devez apprendre les conséquences des décisions architecturales de première main - qu'il s'agisse de vos décisions ou des choix de votre équipe ou d'autres tout à fait. Comme je l'ai dit ailleurs, vous devez être en mesure de casser des choses, gravement, pour apprendre à être un architecte, en particulier dans les grands systèmes distribués.


Travailler sur certains des types d'infrastructures open source que ces organisations soutiennent et utilisent (par exemple, le projet Voldemort, Kafka ou autre) vous permettra d'acquérir une expérience pratique des détails techniques gnangnan sans avoir à trop vous soucier des détails opérationnels pour commencer. Soumettez des correctifs, faites-vous remarquer et commencez à dialoguer avec les ingénieurs que vous aimeriez imiter. Faites un travail remarquable et qui sait ? Peut-être que certaines opportunités de poursuivre votre orientation se présenteront à vous. Bonne chance.