こんにちは!2023年新卒のやまもとです。
私は現在新卒OJT中で、開発~営業~バックオフィスと幅広い部署を各1~2か月で回り、各部署がどんな仕事をしているのか実際の業務に携わりながら学んでいます。
今回はその中の1つ「CE部PE課」のOJT体験記を書いていきます。
PE課って何をする部署?
PE課はプロセスエンジニアリング(Process Engineering)課の略です。
社内のシステムを開発をしたり、修正をしたりとスピード感をもって業務を行える環境を整える縁の下の力持ち部署と言ったら分かりやすいでしょうか。
例えば申請業務。上司→部長→…と承認を人の手でもらいに行くのは時間がかかりますよね?
そこでQuestetraという業務フロー管理ツールで申請業務用アプリを開発して、社員の本業務以外の負担を減らすという仕事もPE課の1つです。
私のスペック
- 2023年度新卒入社
- 学生時代に趣味程度のWeb制作(HTML, CSS ,JavaScript)やPHP開発の経験が少しある
- AWSなどインフラやネットワーク周りは未経験 (OJT前のIT基礎研修知識程度)
多少プログラミング経験はありましたが、社内システム規模だと1発でコードを見てどんな処理がされているのかを読み解くということはできなかったです。
ただプログラミングの基礎である変数や条件分岐、繰り返し、関数などの知識はあったので、何も手を付けられない!という事は無かったです。
PE課OJT中にやったこと
PE課のOJTでは主に以下の業務に携わりました。
- 環境構築
- Python、Questetraハンズオン課題
- 請求書発行システム改修
- 既存のQuestetraアプリの改修
- Slackのスラッシュコマンドアプリ開発
① 環境構築
これは業務をするための準備に当たるので、本来は業務には含まれないのですが思った以上に苦戦し印象に残っているので取り上げました。
、、、。
なぜ環境構築って1発でうまくいかないんでしょうか?
前述した通り学生時代も少しプログラミングをしていたので、環境構築という経験はありますがその時を含め、環境構築って1ステップコケると立ち直るのにかなり四苦八苦した思い出で溢れています。
今回のPE課OJTでの環境構築も1発でうまくできず、環境をすべて壊してゼロから再構築するというのを2‐3回繰り返してようやく完了し、スタートラインに立てました。
環境構築でかなり体力を消費し、先行き不安ですが次の業務に進みましょう。
② Python、Questetraハンズオン課題
PE課で扱うシステムのほとんどがPythonで実装されていたり、次のOJT業務にあるQuestetra改修をするにあたって、まずはハンズオンでPythonやQuestetraに触れてみるという課題です。
ハンズオンだから3-5日くらいあれば終わる気でいましたが、実際は7日ほどかかりました。
なぜこんなに時間がかかったのかというと、Questetraのネット記事が公式以外ほぼ無かったからですね。
私は公式ドキュメントアレルギー気味だったので、初めは少し調べて手を動かしてうまく動かなかったら先輩トレーナーさんに聞くというサイクルを繰り返していました。
しかしトレーナーさんが公式ドキュメントの該当箇所を基に分かりやすく解説してくださっていたことから、「公式ドキュメントちゃんと読めばできるのか!」と私は気づきます。
そして後半は公式ドキュメントを何度か繰り返し読んでから聞いてみるようにしたことで、「公式ドキュメントは味方だ」と思えたのと同時に、少し公式ドキュメントアレルギーから解放されてこの課題は何とか完走しました!
③ 請求書発行システム改修
ちょうどOJT参加タイミングで インボイス制度 への対応があり、それに伴って請求書の内容を一部修正するという業務です。
修正自体は本番に影響が出ないテスト環境で行いましたが、初めて業務システムに触れる機会だったのでコマンドを実行したり、デプロイするときは緊張しました…
微力ながら実際に動いているシステムの修正と本番環境へのデプロイ作業に携わることができたのは、とても貴重な経験になりました。
④ 既存のQuestetraアプリの改修
上でも少し書いた業務フロー管理ツールであるQuestetraで既に使われているアプリの修正をいくつか行いました。
ハンズオンでもQuestetraは苦労したのですが、実際に動いているフローはさらに複雑で「修正したいことは分かるけど、どこのフローを触ればよいのか全然わからない!」という状態でした。
Questetra改修作業中は毎回トレーナーさんに助けを求めて「全体の処理を教えてください!」とか「ここはこういうことですか?」とか質問攻めにしていました…(丁寧に教えていただきありがとうございました!)
⑤ Slackのスラッシュコマンドアプリ開発
これはSlackの機能である「/コマンド名」でアプリを呼び出して実行できるスラッシュコマンドアプリで、請求書の発行状況を簡単に確認できるアプリを開発した業務です。
この業務ではPythonを使ってほぼゼロから開発をしました。アプリのインフラ部分はトレーナーさんに用意していただき、私はわたってきた値を基にデータベースから情報を取り出す実装や、その結果を基にSlackにメッセージを送る実装をしました。
初めはプログラムファイルのつながりやプログラムの意味がさっぱり...だったのですが、実装→デバッグ→エラー→修正を繰り返すうちにファイル同士のつながりや、次はどこを直すべきなのかが数珠つなぎで見え、学びの進みと開発の楽しさを実感できました。
PE課OJTのここが良かった!楽しかった!
① トレーナーさんとペアプロ風で開発出来たこと
バーチャルオフィスで画面を共有しながら「デバッグしてみます」「ここってこういうことですか?」「じゃあこういう実装しようと思います」と話しながら開発をしていました。
学生時代は1人で黙々とやっていたのですごく貴重な経験ができたのと、エラーなどで躓いたときの解決までのスピードの速さを実感できました。
OJTではほぼトレーナーさんにエラーを見つけて解決してもらっていたので、いつかはお互いにエラー解消ができるように経験を積んでいけたらと思っています!
② 自分が書いたコードが理想通りの結果を返したとき
システムの修正や開発ともに、まずはぱっと考えたロジックでコードを組んで動かしてみるという方法で取り組んでいました。
しかし1発で理想通りの実装ができることは無く、何度もデバッグを繰り返したり最小単位での実装を組み立てをした結果、理想通りの結果が返ってきたときの達成感は非常に強かったです。
PE課OJTのここは大変だった…
① 既存システムのコードを読んで理解するのに時間がかかった
ここまででも少し書いてきたように、趣味程度のプログラミング経験はあっても初めて見るコードをある程度理解して、どこをどのように修正すればよいのかを導くのはとても時間がかかりました。
学生時代は基本自分が書いたコードしか見る機会がなかったので、誰かが書いたコードを読む大変さを痛感し、自分が書くときは読みやすいコードを書くことを意識しようと思いました。
② 常に業務が並行して進んでいたこと
前述したOJT中の業務は、上から1つ1つという感じではなく、環境構築後はQuestetra系業務と請求系業務を並行して取り組んでいました。
並行タスクで時間が足りない!という苦労ではなく、1つ1つが私にとって筋肉質な業務で、午前中Questetra業務で頭をフル回転→お昼休憩→午後は請求系業務...のように1日フル回転でした。
集中して取り組んでいるときは楽しいのですが、退勤後の頑張った感はかなりありました。
まとめ
1か月のOJT期間にしてはかなり色々やらせてもらいました。開発が好きな私にとってはエラーで苦戦もしましたがとても楽しい1か月でした。
次は同じ開発系のAS部のOJTに行ってきます!
やまもと みずき(執筆記事の一覧)
2023年新卒入社。現在OJT中です!