• 挫折した過去の自分へ。thincellerさんが実践するスキルアップの秘訣

挫折した過去の自分へ。thincellerさんが実践するスキルアップの秘訣

2024.11.13読了目安: 8
メンターインタビュー
挫折した過去の自分へ。thincellerさんが実践するスキルアップの秘訣

この記事に登場するメンター

メンターのプロフィール画像

thinceller

株式会社マネーフォワード

HTML, CSS, JavaScript, Ruby, Docker, React.js, TypeScript, Ruby on Rails, Node.js, GraphQL

今回は、TechTrainメンターのthincellerさんにインタビューさせていただき、独学時代を振り返ってのお話やプログラミングへのモチベーションを伺いました。

それでは、インタビューお願いします!


ご経歴を教えてください!

京都大学経済学部に在籍中、約1年半ほど京都のスタートアップ企業でインターンシップに参加していました。中退し、新卒で株式会社マネーフォワードに入社後、約4年間BtoB横断組織でバックエンドとフロントエンドの開発に携わりました。現在は、グループ会社のスマートキャンプ株式会社にてSaaS比較サイトであるBOXILの開発をしています。

プログラミングを始めたきっかけは何ですか?

プログラミングとの出会いは、学部1年生の教養科目の中のひとつでC言語を使う情報系の講義を受けたことでした。

京都大学には自分よりも優秀な人ばかりで、劣等感を抱きながら過ごしていましたが、その講義を通して「周りの人よりプログラミングできる!」という気づきがありました。それを感じたのは、3週という限られた時間の中ではボリュームがある課題に取り組んだ時です。課題の中で、書いたとおりにプログラムが動くことが非常に楽しく、自分は熱中して取り組むことができ、意図通り動いたコードが組み合わさって作れたことで成功体験を積むことが出来たと思います。

エンジニアになって6年になりますが、新しい言語やフレームワークを学んだり導入する際に思い通りに動く嬉しさや感動を今も体験しているので、昔も今も変わらないなと感じます。

その後、どのようにプログラミングを学んでいきましたか?

C言語の授業でプログラミングに出会ってから、独学で学習に取り組んだことがありましたが、思うように進まず挫折した経験があります。それも、1度だけではなく、2~3回ほど。

その時になぜ挫折したのかを今になって振り返ってみると、自分が作りたいものを作るのではなく、誰かが作りたいものを作る方がプログラミング学習のモチベーションが圧倒的にあったのだと思います。そのため、独学で開発を進めていたときは最後までアウトプットしきれませんでした。

しばらくプログラミングを本格的にすることはなかったのですが、就職活動の時期に将来を本気で考えたときに、C言語の授業で味わった楽しさを思い出し、「エンジニアになろうかな」と思うようになりました。

それから、改めてプログラミングを始め、スタートアップ企業でのインターンシップを通してさらなるスキルアップを目指しました。

インターンシップを始めるときに購入したMacBook Pro

インターンシップにて実務に入ると、個人開発をしていた時よりメキメキやる気が上がり、誰かの支えになっているという点にやりがいを感じました。作りたいものを作ることでやる気が出る方も多いですが、自分は誰かの”これやりたい”にモチベが上がるタイプで、仲間と一緒に作り上げることが好きなんだと気づくことができました

最初のうちは分からないことだらけで大変でしたが、チームからタスクを割り振ってもらい、”今週はこれをやりきる”という明確なゴールを設定してもらえたのも継続できた理由のひとつでした。

挫折した当時の自分にアドバイスをするとしたら??

アドバイスするとしたら、この2点です!

  • 小さくつくる
  • 公式ドキュメントを読み込む

1点目の小さく作ることについて詳細をお話しします。

C言語の講義課題でも小さいコードの組み合わせから大きいプログラムを作っていきました。さらに、実際にアプリケーションを作る場合は、授業とは比にならないくらいの大きいものになるので、小さいコードに落とし込む思考が必要になります。例えば、ポートフォリオを作るのであれば、まずは見えるところを作り、その後に一覧ページを作るというように、目標を構造化して細かいタスクに分解し、実現可能なゴールを設定していくことが大事だと思います。

先ほどお話しした通り、過去の自分もゴールを明確にせず当てのない探索をし続けて頓挫してしまいました。

2点目の公式ドキュメントを読み込むことについて。

学生時代の個人開発で、Windows画面をキャプチャーするアプリケーションを作ろうと進めていたときの話です。ググって調べてみたのですが、なかなかそれだけでは正確な情報に辿り着くことができませんでした。調べた情報を手元で試してみても自分の開発環境でうまく動作せず辛くなってしまったんです。

そこで、そんなときにはまずは公式ドキュメントを読む。例えば、WindowsであればMicrosoftが出している公式ドキュメントを読むべきだと思います。公式ドキュメントには、正しい情報が書かれていますし、情報が網羅されています。シニアのエンジニアは当たり前のように公式ドキュメントを読んでいるので、若いころからその癖をつけておくと良いでしょう。

ジュニアエンジニアがスキルアップするために意識すべきことはありますか?

自分が意識してきたことになりますが、”なんとなくわかること”を増やしていくことと、理解できていないことを咀嚼して把握することはとても重要です。

自分はコンピュータサイエンスの知識が全くない状態でプログラミングを始めたため、体系的な技術理解が不足していました。ある新しい技術に出会った時は、自分がどこまで理解できて、どこから理解できていないのかを知ることを意識することで技術を深くまで理解することができます。先ほど言ったように公式ドキュメントを読むこともいいですし、エンジニアが発信しているQiitaやZennの記事を読んで他の人がどういう理解をアウトプットしているのかを知るのも有効です。

自分は一つのことに対してまず3~4本くらい記事を読み、習熟度の現在地を計ります。加えて、記事に出てきた知らない用語の記事をさらに読み込むため、一つの新しい技術に対して合計10~20記事を読み、周辺知識も得ることで体系的な知識習得を目指しています。

最初から深く理解するのは無理なので、自分の中で咀嚼してなんとなく把握することを継続していくと良いです。あの頃分からなかったけど後々しっかり分かるという実体験が結構あるので、まずはなんとなく分かることを増やしていき、知識の幅をちょっとづつ広めていき、ちょっとづつ深めていくことを続けていくと、そのうち大きな資産になるのではと思います。

thincellerさんの自宅のデスク環境

TechTrainのメンターへの想いを教えてください。

自分は独学でプログラミングを始め、体系的な知識がないことによる苦労をかなりしてきたので、その苦労で得た学びをこれからエンジニアを目指す人のために伝えて、サポートをしていきたいというのがメンターをしている理由です。最初は断片的な知識だとしても、Web知識を積み上げていけばもっと上のレベルになれるんだという後押しをしてあげられることにやりがいを感じています。

自分が苦労した”どこまで理解できて、どこから理解できていないか”という部分を大事にしてメンターをさせていただいています。

TechTrainユーザーへ一言お願いします。

メンターに質問するときは「こんなこと聞いてもいいのかな」と心配することもあると思いますが、自分には何でも聞いてください。プログラミングを学び始めたばかりの時の苦労や難しさに強く共感できるタイプだと思うので、背伸びせず分からないことをひとつひとつ丁寧につぶしていきましょう!


thincellerさん、インタビューありがとうございました!何でも聞いてくださいと言ってもらえると安心して質問することができますね。プログラミング学習に苦労した方ならではの細かなステップアッププランを考えてくださるので、目標設定に迷った時も心強いですね。

TechTrainでは今回インタビューに答えて頂いたthincellerさんをはじめとして、140名以上のメンターから無料で1on1メンタリングが受けられます。サイドメニューの「面談予約」からぜひメンタリングの予約をしてみてください。

エンジニアタイプ診断

あなたは何タイプ?無料でエンジニアタイプ診断を受けてみよう

かんたん約1分で診断!あなたの強みや傾向を8種類の動物で可視化します