質問: 分散系未経験です。知識が全くなく、何から勉強すれば良いか教えてください。 社会人3年目のインフラエンジニアです。新人時代から現在までメインフレームを扱うプロジェクトにアサインされておりましたが、5月から分散系のプロジェクトにアサインされます。まだ具体的に分散系のどんなプロジェクトなのかは決まっていないのですが、5月までの自宅待機の間に学んでおくようにとの指示がありました。分散系といっても多種多様なものがあると思いますが、初心者が学ぶべきは何でしょうか? 質問が抽象的で申し訳ないです。 よろしくお願いします。
回答: まあ、分散系と言っても、いわゆる「ケーブルを引っ張りまわす」技術系に行くのか、「ソースコードを弄り回す」開発系に行くのかで、全然勉強する範囲が違いますけどね。前者ならTCP/IPの基礎程度は知っておくべきでしょうし、後者なら使用言語を読めるようにしておくのがいいかと。その辺はいくら何でも決まってるでしょうから、「何をするのか」は聞いておいたほうがいいでしょうね。 それより、「開発のスピード感が違う」という点は心づもりしておいたほうがいいかと思いますよ。 分散系は開発期間が数か月(場合によっては数週間)ってのが普通で、予備-基本-詳細設計と手順を踏みつつインスペクションを段階的にやってる暇がありません。作ったら即テスト、大体動けばシステムテスト・・・ということが少なくないので、開発中にバグが出まくることがある程度前提になっています。 逆に言えば、後でバグが出た時に「直しやすいコード」「検査しやすい配線」を、設計時から配慮しておく必要がある・・・ということで、資源が限られているメインフレームでよくある、凝ったソースコードや効率を極限まで追求した配線は、やっちゃいけないことの一つなんですね。分散系は「資源がなければ安く簡単に増やせる」ので。 その辺を了解しつつ、自社の過去の分散開発の資料を読んでおくのが、一番いい勉強じゃないかと思います。