部署の全体会でLTしました!

こんにちは、情報システム部の飯田です。

昨年のAdvent Calendarで私がコロナ禍に入社してからの話を投稿していました。そこで「情報システム部の全体会でLTをしました」と書いており、少し時間が経ってしまいましたが今回はこのことについて書いていきたいと思います!

とその前に、簡単に前回以降のお話

入社から11か月が経ち、来月でいよいよ1年になります。前回は組織についてはまだ見えていない部分も多いと書いていましたが、新年会などの全体イベントがあったり他チームとの関わりが増えてきたりして、だいぶ組織に馴染めたと感じています。

ちなみに昨年末の時点では、本社への出社=チームメンバーと直接会ったのは3回だけでしたが、それが今年に入ってなんと!まだ3回のままです(笑)。あの後にまた緊急事態宣言が発令されてしまったので完全リモートワークを継続中なんですよね。ただ、近々2回ほど出社が決まっているので、久し振りの通勤を楽しみにしています。(あ、緊急事態宣言が明けたので出社勤務に戻るというわけではありません。私は引き続きリモートメインの働き方で行く予定です!)

きっかけ

それではLTの話に戻ります。私のいる新課金チームでは、主に弥生のオンラインサービスの契約に関する画面や裏でのバッチ処理の開発・運用・保守を行っています。同じチームのいっしーさんも過去に記事を書いているので興味のある方はぜひ読んでみて下さい。

私も最近は設計から保守まで幅広くやらせてもらっているのですが、その中でちょっと手間だなと思うことがあり、独自に改善策を調べたり試してみたりしていました。そしてそれをチーム会※で話してみたら思っていたよりも好評を頂けたようで、「今度の全体会で発表しようか!」という流れになったのです!

※週に数回チームで集まって、30分ほど仕事に関する共有や仕事とは関係のない雑談などをする会です。リモートワークでのコミュニケーションの場という役割もあります。

1回目:契約作成と画面キャプチャの自動化

実は上のような流れで既に2回LTを行っていまして、1回目が昨年の11月末の「契約作成と画面キャプチャの自動化」でした。

弥生にはマイポータルと呼ばれるアプリの利用や契約の管理などを行う画面があり、新課金チームではその中の一部の画面を開発しています。新課金のシステムをテストするにはマイポータルにログインして契約の作成や変更を行うのですが、これに結構な画面操作や情報入力が必要で手間となっていたのです。1件だけなら数分で終わりますが、パターンテストのために数十件作るとなるとそれだけで午前が終わってしまいます。

そこで使用したのが画面操作の自動化で有名なSeleniumです。画面のシナリオテストで使われることが多いツールですが、純粋にブラウザ操作をプログラミングすることによって任意の動作を行うことが可能です。手間のかかるアカウント登録や契約作成もボタン1つでできます。

f:id:tatsuki_iida:20210413151455p:plain
自動で作成された画面キャプチャ

もちろんシナリオテスト的な使い方も有用で、システムのデプロイ後にいつも行なっている画面やサービス起動の確認も、自動で操作して画面キャプチャ(エビデンス)まで撮ってくれます!画像ファイルがどんどん作成されていくのは見ていて楽しいです。

※SeleniumはHeadlessモードで動かしているので他の作業を邪魔することもありません。終了処理が不適切でSeleniumのプロセスが残り続けてPCが重くなったことはありますが(汗)

実際にこの後、大量のアカウントと契約が必要となるテストが行われ、作成したツールが役に立ちました!今は他のチームメンバーが汎用ツールを作成してくれたので、今後の新課金のテストはそちらを使って効率化されていくことでしょう。

2回目:アプリのデプロイ自動化

2回目は今年の2月末の「CodePipelineを用いたビルド・デプロイ自動化」でした。

f:id:tatsuki_iida:20210412150409p:plain




終わりません!!(笑)

今の新課金システムはデプロイを手作業で行っている部分があります。手順化はされているので誰でもできるようになってはいるのですが、これだけ手順が固まっているのであれば自動化したいと思うのがエンジニアです。

f:id:tatsuki_iida:20210412150202p:plain
AWS CodePipelineの画面

そこで現在考えているのがAWS Pipelineの導入です。LTでは自分で簡単なアプリを作って、それに対してボタン1つ(設定によってはこれすらも不要に!)でビルドとデプロイが完了するところを実演しました。

実際に新課金システムに導入するには、検討事項が色々あるのですぐにとは行きませんが、チームメンバーにもいいねと言ってもらえたので、これからインフラチームも巻き込んで導入に取り組んでいきます!もし導入できたらまた記事にしたいと思います。

色んな取り組みを広めていきたい!

こんな感じで私の取り組みや検討を情報システム部の全体会で発表してきました。このようなちょっとした取り組みや考えを気軽に話せる雰囲気があり、それが今回のように部署の共有に繋がって周囲から色んなフィードバックを貰うことができました。

ちなみに今回のLTもリモートで行ったのですが、私自身そんなにプレゼンに慣れているわけではないので結構緊張しました。昨年の転職活動でのリモート面接の時の緊張にも近かったでしょうか(笑)。聞き手の反応が分かりづらいのでなんとなく不安になるなど、リモートならではの難しさもあるんですよね。この辺は徐々に慣れていきたいと思います。

リモートワークで他チームやメンバーの状況が見えづらくなっている部分もありますが、これからも色んなことをやってみたいと思います。(そしてそれに触発されて他の方も発表して、このブログに投稿してもらえないかな?)それではまた!

私たちと一緒に会社を盛り上げてくれる人を募集しています! www.yayoi-kk.co.jp