全3回の講習のうちの第3回目を行いました
株式会社リーデックス様にて、全3回の講習を行わせて頂く機会があり、今回は最終回である第3回について簡単に書いてみます。
過去2回の話は、以下のリンクをご参照下さい。
今回は、技術の学び方、及び一緒にやらせて頂いた開発案件の技術的なお話をしたのですが、ここでは前者についてのみ書きます。
技術習得には基礎が重要
第1回の内容に通ずるものがあるのですが、技術習得にも基礎が大切だと考えています。基礎が出来ていない事によるデメリットとしては、大まかに以下の通りです。
- 本当の意味で技術が身につかない
- 技術習得のスピードが遅くなる
基礎で足りない部分がある場合は、今からでも遅くないので基礎を身につけるようにした方が良いと考えています。「急がば回れ」ですね。
「基礎」にあたるもの
基礎が必要と書きましたが、「基礎」とは何なのでしょうか。ソフトウェアエンジニアとして持っているべき基礎として、以下を挙げました。(ソフトウェアエンジニアに限った話ではないものもありますが。)
- 基本的な技術的知識(個別のテクノロジー)
- 計算機科学、数学(理論的な背景)
- 英語
- 学習方法
基本的な技術的知識
「基本的な技術的知識」ってのも曖昧ですね。これに関しては、会社・業界によって身につけるべきものは異なると思いますので、会社・プロジェクトでスキルマップみたいなものを作るのも良い案だと思います。
少し古いですが、IPA IT技術標準のようなものを参考にしても良いと思います。
計算機科学・数学
技術は、どんどんブラックボックス化して、一エンジニアが触る領域もどんどん上のレイヤーに移っていく傾向があるのは間違いないのですが、そのブラックボックスの中身が実際にどのように動いているのか、を理解するのは色んな意味で重要だと思います。
そうした事を理解するためには、技術的な知識もそうですが、計算機科学・数学などの理論的な知識もある程度身につけて置くべきだと考えます。
英語
日本語に訳されているドキュメントは、相対的に少ないことを考えると、英語のドキュメントを読めるというのは必須だと考えます。
海外のベンダーなどとやり取りする事も考えれば、書く力もある程度あった方が良いと思いますが、聞く・話すは、ソフトウェアエンジニアの技術習得という観点からすると、そこまで必要無いかなとは思います。
学習方法
時間は有限ですので、試行錯誤しながら自分に合った効率的な学習方法を見つけると、その後に違いが出てくると思います。
何を学ぶか
個人が学べる技術の量にはどうしても限界がありますので、何を学ぶか、というのも重要だと思います。
- 興味がある分野
- 会社・世間で必要とされている分野
- 得意分野
という3つの観点で考えて、それらがある程度重なる部分を中心に攻めていくのが良いかなと思います。
具体的なtips
ここは、人によって大きく異る部分ですので、あくまで私自身の経験で、という点を断りつつ、いくつか説明しました。以下、簡単に紹介します。
技術・知識の勉強に関して
- 書籍での勉強
- レベルに合わせた本を読む。難しい過ぎると感じたら、一旦諦める
- 目的に合わせて、定番本を1冊じっくり読む、複数冊をざっと読む、等を分ける
- オンラインでの勉強
- 公式チュートリアルは有用
- 公式ドキュメントは一通り目を通す
- 最近は、オンラインコースで良いものが多い
- プロジェクトを通じての学習
- レビューされるだけでなくする側にもなる
- 他人の成果物から学ぶ
- 質問の仕方を身につけ、効率的に情報を得る
- ネットで調べる場合は、信頼できる情報源から
- ソースを読むのも大切
- 他人と一緒に学ぶ
- 勉強会に参加する
- 内輪で勉強会を企画する
- 社内で情報共有の仕組みを回す
英語の勉強
ここは、本人がどの程度の基礎力を持っているかによって大きく変わると思いますが、レベルに応じて大雑把に
- 中学〜高校の文法・単語をしっかり身につける
- 語学学習者向けのリーディング素材(Penguin Readers 等)で、少し簡単なものを沢山読む
- 普段から、英語に触れる機会を増やす
という方法を紹介しました。
ただ、私自身は英語教育の専門家では無いので、この辺りは専門家のアドバイスに従うのが良いと思います。そして、「専門家」にも色んなレベルの色んなタイプの方がいますが、感覚なり何なりで、自分に合いそうなアドバイス・メソッドを見つけてみてください。
私自身は、最近人が勧めていた以下のサイトが、書かれている内容にも納得できたのと自分自身の経験にある程度マッチしていたので、ここに紹介しておきます。
まとめ
株式会社リーデックス様で、3回に渡って講習をする機会を頂きました。どうもありがとうございました。
技術に関する講習は、過去に結構やってきたのですが、今回はもう少し幅広いトピックだったため、自分自身が勉強したり考えを整理する機会にもなり、有用だったと思います。今後も、機会があればこのような講習などを行いたいと思いました。
技術講習の依頼、開発案件のご相談等、ご不明な点がございましたら、以下のリンク先よりお気軽にお問い合わせ下さい。
コメントを残す