転職したらスマレジだった件

スマレジのエンジニアやまてのテックブログです。マジレス大歓迎です。

Web 系エンジニア2年目の 2023 年の振り返り

スマレジのテックファーム(SES 部門)で Web 系エンジニアとして働いている やまて(@r_yamate) と申します。

2023 年 4 月からは、スマレジの関連アプリの開発業務を担当しています。触ったことのなかった Flutter での開発を担当(React も少々)することになり、日々奮闘中です。開発しているアプリはモニター利用も始まり、開発の醍醐味を味わえていて楽しいです。

はじめに

新年あけましておめでとうございます。

今回は、Web 系エンジニアとしての2年目(2023 年)の1年を振り返ります。

異業種からのスマレジ入社日が 2021 年 12 月だったので、Web 系エンジニア2年目としています。

目次

2023 年の振り返り

1〜3月⛄️SES での1社目の出向先での経験

基本設計、詳細設計の資料作成業務

2022 年3月から 2023 年3月までの1年間は、SES の初めての現場でテーブルオーダーシステムの機能改修の基本設計、詳細設計の資料作成業務に携わりました。

👉 出向先での経験の詳細は以下の記事で振り返りました。

ryamate.hatenablog.com

実務でコードを書けていないことでの焦り

当時は異業種からの転職後、実務でコードの実装経験を積めていないことで焦りを感じていました。

実装業務を経験してから設計業務を担当した方が良いと今でも考えているものの、振り返ってみると設計業務を経験できたことは、とても良い経験だったと思っています。

良いシステムを提供してお客様に喜んでもらう

技術的なことではないですが「良いシステム、良い機能を提供してお客様に喜んでもらう」という空気が漂う職場の雰囲気があり、それがとても良かったです(当前なのかもしれませんが前職が公務員であるため、自分にとっては新鮮でした)。

また、現場の開発担当の方は、技術に幅広く精通していて、とても会社に頼りにされている様子が印象に残っています。

自分も出向先の方々と同じような意気込み、エンジニアとしてのスキルを持って、世の中に貢献できるようなシステムづくりに携わっていきたいと思います。

4〜6月🌸やっと手にしたプロダクトコードの実装業務

自社内での開発業務

4月からは、一旦 SES での出向はせず、スマレジ社内でスマレジ POS 関連アプリの開発に参画し、実装業務を遂に経験できました!

触ったことのなかった Flutter での開発を担当させていただくことになり、色々と未経験で不安はありましたが、自分を選んで任せていただいた期待に応えようと心は燃えていました。

開発チームメンバーにも恵まれて、良い環境で働けていると思っています。すごく仕事のできる方々で、人の仕事ぶりからも学んでいます。

👉 5月までの振り返りを一度、以下の記事で書きました。

ryamate.hatenablog.com

自分のコードが新規開発アプリのプロダクトコードになる

この新規開発アプリがリリースされたら、自分が書いたコードがプロダクトコードになって世に出ることになります。

エンジニアになって実現したいことを叶えるチャンスです。

反面、Flutter の実装内容はほぼ自分のコードなので、バグが起きたら自分の書いたコードのせい、という分かりやすさがとても刺激的です。

そのため、不安は大きかったですが、マージリクエストでは経験豊富な方に丁寧にレビューをしていただき、不安は少なくなっていきました。

バグは心配ですが、店舗で利用する系統のアプリなので、正式リリース後には導入された店舗に客として行ってみたいと心待ちにしています。

ChatGPT に聞きまくる日々

初めて尽くしでわからないことだらけの日々の中で ChatGPT は本当に欠かせないツールでした。毎日のように質問回数の上限に達するくらい最大限活用しました。

実装業務が初めてのジュニアクラスのエンジニアである私でもここまで自走してやってこれたのは、ChatGPT がいつでも聞ける先輩エンジニアのようなポジションに居てくれたからだと考えています。

中でもエラーで詰まる時間はかなり抑えられたと考えています。自分で解決できずに人に聞く、という場面が少なくなるため、人の手をかけずに自走することにつながりました。

聞きまくっても詰まりまくる日々

とは言え、解決するまではエラーにハマることは多々ありました。

エラーの沼にハマって、どうしても自分だけで解決できないこともありました。

ChatGPT に頼りまくってスキルは伸びるのか

なお、ChatGPT に聞きまくってほぼコードを書いてもらって実力が伸びないのでないのか、と自問自答することはありましたが、そういう実感自体は無かったです。むしろ、実装するスキルは確実に伸ばせたと思っています。

ChatGPT に聞けることの方が多いですが、実装内容によっては自分で考えざるを得ないことも多くありました。

👉 どのように ChatGPT を利用をしていたかは、以下の記事で書きました。

ryamate.hatenablog.com

7〜9月🍉ひたすら Flutter での実装

実装内容のクセ強め

引き続き、Flutter での機能追加、機能改修を進めました。

開発するアプリは、Web 管理画面と Flutter で開発する Android アプリがあり、担当する Android アプリは WebView での実装です。

WebView とは、ネイティブアプリケーション内で Web ページや Web アプリなどの Web コンテンツを表示するための仕組みです。

ryamate.hatenablog.com

プリンターなどとの機器連携以外は Web 側で開発するため、私はフロントエンドから受け取った外部機器連携のリクエストの処理を実装する担当、という感じでした。

ちなみに連携する機器は、プリンターのほか、自動釣り銭機や二次元スキャナー、決済端末などです。

Flutter のスキルは伸びたのか

経験豊富な方にレビュアーをしていただいたこともあり、スムーズに理解を深められたと感じています。(レビュアーをしていただいた方は仕事の進め方なども含めて、とても見習うべき点が多く、一緒に働けて良かったです。)

ただ、WebView での開発だとウィジェットで画面を作ったり画面遷移を実装したりする機会がほぼなかったため、Flutter アプリを今後新たに開発する場合は、まだまだ基本的なことでも勉強が必要になると考えています。

👉 実務で使う知識のインプットのためのアウトプットとして書いた Flutter のブログ記事は 16 記事でした。

ryamate.hatenablog.com

Web 系エンジニアの仕事は楽しい

Flutter の実装担当は私一人なので不安や責任が大きい一方、ごっそりとリファクタリングやスクラップ&ビルドも気兼ねなくできて、とても自由にコードと向き合えています。

実装で壁にぶち当たることは相変わらずですが、この頃からは実装がどんどん楽しくなってきていました。

散々四苦八苦したあとに、思った通りに動いたときの快感は何度味わっても最高です。

リファクタリング好き

また、思ったとおりに動くコードをがむしゃらに書く → 汚いけど動くコードをきれいにリファクタリング、という流れを経てコードをきれいにする過程(作業)が楽しいし、好きだと気づきました。

どう書いたらコードがより良くなるだろうと、プライベートでの自習時間も含め四六時中考えてました。

10〜12月🌰React での実装

実務での成長スピードは早い

10 月下旬以降は、React での実装業務を初めて経験しました。

React の実装内容ついては、Flutter との WebView での連携部分についての機能改修を主に担当しました。

React についてチンプンカンプンな状態でチケットに着手したので、当然、悪戦苦闘しました。

ただ、文法すらよく分からないながらも調べながら実装することで、2ヶ月でかなり理解が進んだと感じています。

実務での成長スピードはやはり教材のみでの学習よりも段違いに早くなると実感しました。

👉 以下の 11 月に作った React 学習ロードマップは step1 をゆっっっくり進行中です!…

ryamate.hatenablog.com

実装業務以外の業務

実装する業務以外の作業が増えてきました。

開発チームのメンバー以外にも社内のさまざまな役割の方々と連携をとる機会が増えたり、リリースまでの諸々の調整や資料作成などがありました。

新規開発アプリをリリースするまでをマルっと経験できていて、とても充実しています。

あと、社内のさまざまな役割の方々で一緒にこのアプリを良くして、たくさん売っていこう!という熱さがあり、仕事が面白いと思える一因になっていると思っています。

その空気で働けるのは、勢いのある会社で働くメリットだと思っています。

[2023 年総括] コードを書きまくれて良かった!…

所詮は実務での実装経験9ヶ月目なので分からないことだらけなのですが、分からないことと一つひとつ向き合いながらコードを書いてきました。

求められた業務を求められた期日でなんとか遂行しようとしてきたことで、大きく成長できたと思っています。

なお、プライベートでの自習時間は、個人開発もしたいと考えていましたが、実務で必要な知識の習得に全振りしました。月 80 時間程度をスキルアップにぶっ込んで頑張ったので、たくさん昇給してほしいです。()

また、日々自分のできるベストエフォートでやり切ったことで自信がつきました。

自信と言っても、技術力が高くなった自信ではなく、未知の課題であっても、途中で詰まりに詰まっても、諦めずに完成させる自信です。

あとは余談ですが、12 月に第二子が産まれました。

28 日間のパパ育休を取得させていただきましたが、第一子は小1なので忘れていましたが、新生児の育児は本当に大変でした。育休取らなかったら、終わってました。育休取得を快諾してくれた会社とチームに感謝です。

時間の捻出が当面の間かなり難しい状況が続きます。

2024 年の目標(仮)

プライベートでは0歳児の育児が最優先であるため、どれだけ時間を捻出できるか未知数ですが、一旦、書き出します。

  • Flutter と React の実装スキル向上
    • 実務を通じて、Flutter での実装スキルをより高める。
    • 実務を通じて、React での実装スキルをより高める。
  • Flutter での個人開発アプリ作成
    • 技術習得やアイデアを試すことを目的として、一つ作る。
  • 継続的なインプット&アウトプット
    • React 学習ロードマップの続きをする。
    • 『良いコード/悪いコードで学ぶ設計入門』を再読する。
    • ブログ更新を月に1記事投稿する(1〜5月)
    • Qiita 記事更新を月に1記事投稿する(6〜12月)
    • Zenn に初投稿する。

…とりあえず書き出したものの、「長期的に仕事で何を実現したいか」を逆算してしっかりと考えられていない気がしてきました。目標は再考します。

おわりに

今回は、Web 系エンジニアとしての2年目(2023 年)の1年を振り返りました。

ありがとうございました。