私が10週間のテックキャンプで学んだこと

docs.google.com

 

github.com

最終課題及びオリジナルアプリ実装を通じて得られた学び3つ

 

一つ目はタスクを洗い出す力を身に付けられたことです。

アプリ開発ではやるべき作業や期日を意識しないとあっという間に時間が過ぎてしまいます。

最終課題を通じて、やるべきことを細かく分解してタスクとして洗い出し、期日を設定してから取り掛かる力が身についたと思います。

今後の開発でも、タスクを洗い出してから作業に取り掛かることで効率的に開発を進めて行きたいと思います。

 

二つ目は問題を切り分けて考える力を身に付けられたことです。

今まではエラーが起きた時、原因がわからず、長時間悩んでしまうことが多くありました。

しかしそういった場合にも、処理を順番に追って問題が起きている範囲を絞り、エラーの原因を丁寧に切り分けることで、解決への糸口を見つけることができると学びました。

プログラミングを行なっていく上でエラーは避けては通れないものですが、それも成長のきっかけと考えて、今後も怯まず実装に取り組んでいきたいと思います。

 

三つめは機能実装に必要な情報を自ら探し、試行錯誤しつつ実装する力を身に付けられたことです。

機能実装に必要な知識は多岐に渡ります。知識を与えられることを待っているだけの姿勢ではとても足りません。

その時々で機能を実装するために持っている知識の引き出しから使えそうな手段を探す、あるいは手元になかったら探して学ぶ、そうして試行錯誤しつつ実装するという姿勢がエンジニアには求められるのだと思います。

 私はアプリ開発を通じて、知識を学んだだけで終わらせるのではなく必要に応じて使いこなすこと、及び知識のための知識ではなく実装に必要な手段として知識を学ぶこと、つまり、実践的な学び方と実装力を身に付けることができたと思います。


そして、私はこれらの学びによって作業全体を構造化して考える習慣を身につけることができたと思います。

 

一番大きく変わったのは「問題を認識して、前向きに具体的なアクションプラン」を考えるようになったこと

「どうしよう、わからない。」ではなく「それなら、どうやって解決しよう」と、前向きに解決に向けての手段を探すようになりました。

他にも「自分で計画を決めて着実に取り組めているか」「要件の説明をできるかどうか」「機能の追加が可能かどうか」「実装にどれほどの時間がかかるか」「使いやすいかどうか」「バグが少ないか否かなどを意識して実装できているか」などを自問しつつ、いずれエンジニアとして働くために必要な経験を積むことができたと思います。

曲がりなりにも一つのアプリを完成させると言うのはとても良い経験になりました。

 

私が今後エンジニアとして働いていく上で意識していきたいこと3つ

 

①プロジェクトごとに、環境が再現できるようにメモを書いておくこと

 開発にエラーはつきものですが、同じエラーを何度もするのはいただけません。一度経験した出来事を血肉にして、あとで振り返ることができるように、プロジェクトごとに環境を再現できるようメモを残していきたいと思います。重要なのはその時の考え方なので、何を根拠に実装したのかもメモしていけるようにしたいと思います。

 

②セルフコントロールを身につけること

 エンジニア職ではわからないことが日常になるため、メンタル面を鍛えるべきだとも思いました。開発途中わからないことがあったり、実装が思うようにいかないとモチベーションが下がってしまい、気力が沸かない時もあったのですが、わからないたびに落ち込んでたら仕事になりません。うまくいかない中でもモチベーションを保つことができるよう自分で自分を励ますセルフコントロールを身につけていきたいと思います。

 

③新しい情報を追いつつも、基礎をしっかり固めること

 これでカリキュラムを終えるわけですが、基礎も応用もまだまだ足りていないと身に染みて痛感しています。私は一度実装に詰まって開発途中のアプリを投げ出してしまったのですが、それというのも基礎ができていない段階で、自分が理解できていない範囲に手を伸ばしたのが原因だと考えています。技術を増やすことばかりについ目を向けてしまいがちですが、土台となる基礎が小さければその上に立つピラミッドも小さくなってしまいます。新しい情報を追いつつも、基礎を疎かにせず着実にものにしていきたいと思います。