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

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

人生初!実務でのマージリクエスト - 2023年3〜5月の振り返り

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

実務では、2023 年 3 月末で SES の派遣先で、テーブルオーダーシステムの機能改修業務の設計などを担当していた業務を終えたところです。

4月からは、スマレジの関連アプリの開発業務を担当しています。触ったことのなかった Flutter での開発で、日々奮闘中です。

はじめに

IT 関連の学習について、学習効率を高めることを目的として、月に 1 記事、振り返りのブログ記事を投稿していたのをしれっとストップしていたので、ここ 3 か月をまとめて振り返っておきます。

4 月からは新しい案件に参画しており、業務外の時間でも関連する技術などのキャッチアップに勤しんでいたので、今回は自習の内容に加えて、実務でどのようなことをしてきたかを振り返ります。

なお、人生初の実務でのマージリクエストをしたのが感慨深く、タイトルにねじ込みました。

目次

2023 年 3 〜 5 月を振り返ります。スマレジには 2021 年 12 月に入社しているので、 2 年目が半年ほど経過した時期にあたります。

3 月の振り返り

まずは 2023 年 3 月から、実務と自習の内容を振り返ります。

実務の内容

実務では 3 月末までで、SES の派遣先でのテーブルオーダーシステムの機能改修業務の設計などを担当していた業務を終えました。

ryamate.hatenablog.com

自習の内容

計画通りの学習

2 月の振り返りで書き出した計画について、概ねそのまま実施しました。

ryamate.hatenablog.com

1.Flutter の学習

  • 実務で必要な技術の学習
  • Udemy動画学習
  • ブログ記事投稿

2.読書『良いコード/悪いコードで学ぶ設計入門 ―保守しやすい 成長し続けるコードの書き方』

  • 6 条件分岐 ―迷宮化した分岐処理を解きほぐす技法―
  • 7 コレクション ―ネストを解消する構造化技法―

ちなみに、 3 月の業務外での学習時間は 94h でした。

2 言語目であれば、ある程度までの習得は短期間でいける

Flutter の学習については、 1 月から始めて 3 か月程度ですが、開発環境構築方法、基礎的な文法については身につき始めていたかなと思います。

Flutter を学び始める前の PHP しか書けない段階では、「一からの習得か…」と思っていました。ですが、プログラミング言語を習得するのが 2 言語目であれば、ある程度までの習得は 初めてプログラミング言語を学ぶときとは比較にならないくらい短時間でいけるな、という感想を持ちました。

ChatGPT などの AI や GitHub Copilot の存在も大きいです。プログラミング言語でどのようなことができるのかを分かっていれば、文法の違いは AI が補助してくれるので、別言語に手を出すことはそれほど恐れることではないな、という感覚に変わりました。

とはいえ、 Flutter 固有の UI の実装方法についてはいまだ慣れていないですし、あやふやなことが山ほどあるのでまだまだこれからです。

4 月の振り返り

2023 年 4 月からは、スマレジの関連アプリの開発業務を担当することになりました。実務でコード書いたことない上に、学び始めたてホヤホヤの Flutter での開発で、日々奮闘しました。

実務の内容

決済関係の外部機器連携が主な役割

Flutter で担当する役割は、外部機器連携が主な役割です。

スマレジ関連のアプリであるため、会計に関して連携する機械とのやり取りがいくつかあります。決済方法は現金決済のほか、QRコード決済、クレジット決済、電子マネー決済など、多岐に渡ります。そのため、外部機器連携としても、決済の数だけ連携することになり、その機器たちと問題なくやり取りする、という重要な役割の実装です。

機器連携の接続検証を順次やっていくのが、4月の主な業務でした。

Kotlin も意外と書かないといけない

Flutter で開発するアプリは Android 端末で動かす予定なのですが、 Kotlin も意外と書かないといけない機器の連携がありました。

具体的な手法としては以下の記事のように、MethodChannel という Flutter とネイティブプラットフォーム(今回は Android)の間でメッセージをやり取りするための仕組みを使って、 Kotlin で実装する部分がありました。

ryamate.hatenablog.com

Flutter(言語としては Dart )も初めて実装する中、 Kotlin のコードも書かないといけないため、かなり苦戦しました。

自習の内容

実務のためにひたすら Flutter のキャッチアップ

4 月からは実務で本格的に Flutter で開発する日々になり、実務だけでなく自習についてもずっと Flutter のキャッチアップをしていました。

具体的には以下の記事内容で、投稿したようなことが実務では必要だったため、ブログ記事にまとめることで理解を深める一助にしようとしました。

ryamate.hatenablog.com

ryamate.hatenablog.com

#今日の積み上げツイートは一旦やめる

習慣化してからは自分では当たり前のことになってしまったけど、転職してからも月に 100 時間継続していることは頑張ってやってきたほうだと思うし、実際に確実にやった分は成長したと思います。

ただ、 4 月はずっと実務のキャッチアップのみで、詳しく書くと業務日報みたいになってしまうので、ツイートするにしても、やったことは詳しく書けずにいました。そのため、以下のツイートを最後に、 #本日の自習ハッシュタグをつけた投稿は一旦ストップしました。

とはいえ、毎日の自習自体は継続しています。 2020 年の 8 月からは一日も空けずに継続しているので、今年の 8 月で丸 3 年になります。

5 月の振り返り

実務の内容

人生で初めての実務でのマージリクエス

4 月の実務の内容に書いた、各外部機器との連携をする実装を一つずつ実装しています。

GitLab でマージリクエストして、レビューしてもらう体制ですが、人生で初めての実務でのマージリクエストをしました。このツイートには書いていないですが、たくさんの修正のレビューをいただきました。が、やっと手にした実務で実装する機会なので、それすらも有り難くて感慨深かったです。

自習の内容

5 月も前月に続き、実務で必要なスキルのキャッチアップのみに自習時間を費やしました。

実務でプログラミングができる環境を手に入れたので、とにかく今は実装するためにどうすればいいかと向き合って、実装スキルの向上を加速させたいです。

時間の集計も、今日の積み上げツイートもやめて、どう変化があったか

やめても自習は毎日継続していますが、時間の使い方に対する姿勢の質が落ちたな、と悪い方の変化を感じています。

時間を集計してツイートに含めることの意味としては、宣言を人に聞いてもらうことで、可処分時間を無駄に過ごさない高い意識での学習の習慣づけにつながっていたな、と思います。

ツイートに今日やったことの成果を書くことの意味については、何も進まなかったとは書きたくないし成果を書きたいと思うことで自習内容の質が高まるな、と改めて気付きました。

そのうち再開しようと思います。

おわりに

今回は、直近の 3 か月で業務外の時間や実務でどのようなことをしてきたかについて振り返りました。

何はともあれ、待ち望んだ業務をできている今を、このチャンスを最大限に活かしていきたいです。

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



何はともあれ、今はとても楽しい。