フューチャー技術ブログ

インフラからアプリ領域にチャレンジした話

こんにちは。TIGの伊藤です。この記事は春の入門連載2022の8日目の記事です。
この連載は「新年度新しいことに取り組んでみる」ということも目的やテーマとして取り上げていますが、そんな私は新年明けてから3月末までアプリ領域に取り組んでみた、という内容を取り上げてみようと思います。
未知の領域に入門するとき、どうしても点になりがちな知識たちをつなげるためにどうしたか?みたいなところを読んでいただけると幸いです。

これまでの私の遍歴

前職に新卒で入社してはじめてエンジニアになりました。その頃は、エンジニアにもインフラとかフロントエンドとかあったことを全く知らずに、日々案件の仕事をこなしていました。前職ではRuby on Railsを取り扱っており、それに関わるフロントからインフラまで触れたのはいい経験でした。そんなこんなで、これまででアプリは全くの未経験というわけではないです。とはいえ、結構前の出来事であったり、その当時はインフラの方がより興味があったため、転職を機にインフラ領域を主軸として仕事をしています。
インフラを仕事にしてからは、コードと呼ばれるものはTerraformくらいで、あとはYAMLは書いていました。そんな中、年明けにプロジェクト異動のタイミングが重なり、アプリに挑戦させてもらいました。

ロールチェンジしたモチベーション

私がアプリに手を出したいと思ったきっかけ、モチベーションです。
当たり前と言えば当たり前なのですが、インフラだけやっていてもサービスが完成することはもちろんなく、作ったインフラの上にアプリを乗せることで初めてどちらも力を発揮するものだと改めて思っています。車の両輪、とまではいかないですが、インフラの上にアプリを乗せる常がある限りは、

  • 何がアプリとして乗るのか
  • どんなシステムを作るのか

の視野を広げたいという気持ちでアプリを作れる環境を選びました。
このきっかけとは別で、以前所属していたプロジェクトでクラウドリフトをやっていた時に、既存のアプリへの理解が深くできなかったために、踏み入れられないエリアがあったためでもあります。

ロールチェンジしてやっていたこと

アプリをやり始めたときは、プロジェクトとしてGoを取り入れるタイミングで参画したので、数日Goを勉強する時間をいただいて、アウトプットとして簡単なCLIを作りました。
また、チームで開発するための共通認識としてGoDocの書き方をまとめて説明もしたり、エディタの設定の統一など開発の基準を設けることもやりました。幸いにもフューチャーには、先日発売された「実用Go言語」を執筆する方もおり、助言をいただきながらしっかり目に基準を設けることができたかと思います。
その他は実際にGoのコードを書いてはレビューをもらい、わずかながらですが案件を出る頃には少しだけ感覚を掴むことが出来ました。

ロールチェンジして思ったこと

ロールチェンジして改めて肌で感じたことがいくつかあります。

別領域の開発経験も役に立つ

言わずもがなといえばそうなのですが、これまでインフラをやって経験したことが役に立ちました。Terraformの理解度は高く、大体の勘所は分かるようになっている一方、俗に言うプログラミング言語はほぼできないので不安はありました。しかし、一定のルールについてはソースコードを書くときの感覚にも生きており、知識が繋がっていることを感じました。

インフラを意識してアプリを考えられる

これはバックグラウンドが生きてきた場面ですが、先のモチベーションのところでも書きましたが、自分の領域外のところを意識してものづくりが出来たと思っています。

  • どんなインフラの作りになっているか
  • 性能が悪くなるとどんな影響が起こるか

など、インフラを理解してアプリの作りを考えられたことは良かったです。

まとめ

この記事は本当に新人の方向けになっていると思います。未知の領域に飛び込んだ時、全てを一回リセットして初めてみることもありだと思いますが、意外と技術はつながっているので、点を結ぶように調べていくと効率もよく、より楽しく学べるのかなと思いました。
また、ロールチェンジはタイミングあれど、リフレッシュにもなったので、オススメです!