2017-06-02 7 views
0

インタビューでこの質問がありました。インタビュー担当者は、世界中のアプリケーション(Yelpなど)のバックエンドアーキテクチャを設計するように頼んだり、使用する必要のある技術を尋ねました。ワールドワイドアプリケーションのバックエンドアーキテクチャを設計する方法

インタビュータイムスロット(この質問には約5~10分かかると思われる)で何を回答する必要がありますか?類似のアプリケーションのアーキテクチャ設計に一般化することはできますか?回答はhereでしたが、インタビューの質問への回答はあまりにも多く、アプリケーションにはあまりにも具体的です。

答えて

0

"世界的なアプリケーション"の意味に依存していると思います。 「ロット人が使用するアプリケーション」を意味するか、「多くの異なる国のユーザーを持つアプリケーション」を意味する可能性があります。あなたがシステムアーキテクト、またはシステムエンジニアとしての仕事についてインタビューをしていたなら、私は前者が意図したものかもしれないと思います。あなたがプログラマーの立場でインタビューしていたのなら、それは後者かもしれません。

以前は、堅牢性とスケーラビリティのタイプの回答を探していました。複数のWebサーバーとdbサーバー間の負荷分散。パケットのフィルタリングとトラフィックの監視など...

後者の場合、後者の場合、言語のローカリゼーション手法、住所や電話番号などのさまざまなフォーマットを処理するためのdbモデルなど、使い勝手と多様なインタフェースタイプの回答が求められます。

0

あなたは正しいです、それはインタビューのための非常に広い質問です。あなたのスケーラビリティ、可用性などのスキルについて広範な回答が期待されたり、インタビュアーがあなたがドンで問題に取り組む方法を見たい詳細はありません。この場合、そのような質問に対する良い答えは、システムに関する質問、主に非機能要件に関する質問です。アーキテクチャー上の意思決定を行う前に、システムに関するすべての詳細を調べることが非常に重要です。質問をすると、そのようなタスクに対処する方法が分かります。

+0

お返事ありがとうございます。どのような種類の質問を質問する必要がありますか(またはどのような側面、方向から)、質問を絞り込む必要があるかについての詳細を説明してください。 – ZigZagZebra

+0

技術に関しては、ライセンスの制限、予算、チームのコンピテンシー、スケーラビリティ、可用性の要件について質問する必要があります。いくつかのツール/製品にはコストがかかりすぎるものもあれば、垂直スケーラビリティと水平スケーラビリティの両方をサポートしないものもあれば、トランザクションをサポートしないものもあります。ソリューション設計について話す場合は、機能要件について主に質問する必要があります。たとえば、格納するデータが構造化されておらず、sctrict形式でない場合は、NoSQLを使用するか、システム内の各イベントを追跡する必要があるEvent Sourcingなどを実装したい –

関連する問題