見出し画像

モノグサ内で最もSWEらしくないSWEのお仕事(?)

はじめに

まず軽く自己紹介を。
モノグサでボードゲーマー兼SWEとして2022年の8月から活動してます、白崎といいます。今年で0x30歳(※1)になりますが、この記事を書いている時はまだ 0x20代です。

以上!

え?ざっくりとしすぎだろう……って?
では、少しばかり詳細を。

まず、ボードゲーマーとは、ボードゲームで遊ぶ人のことです。当然ですよね!
弊社公式サイトの会社概要(※2)、バリューと行動指針のところに「いつでもボードゲームを遊ぶ余裕を持つ」と書いてあるように、モノグサにはボードゲームで遊ぶカルチャーがあります。

月一回の社員みんなで遊ぶボードゲームの時間があるだけではなく、仕事の合間や仕事が終わった後などに遊んだりもします。

ちなみに個人的にも、わりと古参のボードゲーマーです。赤箱と青箱(※3)は持ってました。

では次に、SWEとは、Software Engineerの略称で、簡単に言うとパソコンの前で小難しい顔をしながらうんうん唸ってたり、ぶつぶつ言いながら歩き回ってたりする人のことです。

はじめましての人も、そうじゃない人も、よろしくお願いします!


前回までのあらすじ(職務経歴的なもの)

僕の経歴をざっくり紹介しますと、前職は横浜にある産業廃棄物処理業者の事務を、その前は大阪にて家電量販店のサポートカウンター業務をしていました。

それってITとか教育とか、モノグサと全然関係ないよね……?と疑問に思われたかもしれません。まさにその通りで、転職のきっかけも、40代も半ばになってからなんとなく出会って始めた競技プログラミングでした。

ということは、なんと、噂にだけはよく出てくる幻のレアポケモン「40代未経験からエンジニア転職」がここに生息してるわけなんですよ。ハイパーボールを投げる準備をしてください。すでに体力は弱っているので、これ以上ダメージは与えなくても大丈夫です。

閑話休題。

ところで、弊社の他の人たちによる記事は、もうご覧になりましたか?
僕も自分の記事(いまあなたが読んでいる “これ” です)を書くにあたって、参考として読んでみたのですが、みなさんプロフェッショナルという感じで、すごいですよね。

……いや、この中に混じって僕が書けること、全く無くないですか…… orz (※4

と絶望に打ちひしがれつつ記事を書いているわけですが、その理由も、僕の経歴からみなさんお察しいただけたかと思います。

とはいえ、裏を返せば、僕にしか書けないこともあります。

それはつまり、EdTechベンチャー企業のSWEに潜り込んだ未経験40代、モノグサ社内で最もSWEらしくないSWEの僕が、この2年間どんな感じでやってきたのかということです。

そもそも、実際のところなにやってるの?

SWEとしては、CSCR (Customer Success and Customer Reliability) チームに所属しています……が、これだけだとピンときませんよね。

具体的にお話しできる範囲としては、直近おこなった大きめの案件として、請求システムを freeeに移行するなんてことをやってました。他にもこれまで触ってきた部分は、顧客との契約やそれに対する請求など、バックオフィスに関わる部分が多いです。

例えばの話ですが、毎回のように間違った請求書を送ってくる会社とは、あまり取引はしたくありませんよね。とはいえ、実際に請求書を発行するまでのプロセスは、ビジネスサイドでの顧客との交渉や契約の作成、経理による実際の請求書の発行・修正・送付などいろんな人が関わるわけで、どうしてもミスは出てきてしまいます。

そこを、Monoxerのシステム上で可能な限りミスを防げるような仕組みにする……これはすなわち顧客からの信頼を開発の側面から支えているというわけで、CSCRでいうところのCR的な業務ということになるわけです。たぶん。しらんけど(※5)。

とまぁ、業界人が語りそうなそれっぽい話はそれでいいとしてですね。

で、ホントのところはどうなの?

自分で言うのもなんですが、IT業界という側面から見た場合、僕は中途採用がほとんどのモノグサ社内において、現在おそらく一番経験が浅いSWEです。完全未経験からの入社でようやく3年目ですからね。

そんな僕でもできる仕事は、実はそこそこあります。

なぜなら、モノグサはベンチャーであり、そのプロダクトは現在絶賛進化中で、日進月歩どころか時進日歩の状態であり、人手がやや足りていないからです。

モノグサでは現在、Jiraを利用したチケット駆動による開発が行われており、無数に生まれるチケットは優先度がつけられ、おおむねそれに従ってSWEが実装を進めていきます。

ということはですね、取りこぼされ、埋もれていくチケットが結構あるわけです。そこにはもちろん「僕でもできる程度に難易度は低いが、インパクトはそこそこある」チケットがあるわけで、手が空いたときにはこれらのチケットを確認・選別すれば、いくらでもできることはあると、そういうわけです。

ありがちな言い方をすると、仕事は探せばある、みたいな感じでしょうか。

あとは、そうですね……社内コミュニケーションに使われているSlack に、変などうでもいいことを積極的に書くようにしています(※6)……え、これは仕事じゃなかったんですか……!?

ついて行くの大変じゃない?

さて、経験が浅いということは、現場では常識的なことでも知らないことが多いということです。

するとどうなるかというと……そう、みんなが話している技術的なことの多くがイマイチよく分からないのです!まぁ、その場で調べてなんとなく話を合わせたり、合わせられなかったりするんですけれども。

ただ、ソフトウェアの技術って、基本的にはみんなが「楽をしたい」という気持ちから生まれていると思うんですよ。つまり、本質的には、それら自体は簡単なはずなんです。だって、楽をしたいんですから。

実際に使うときには、細かな制約があったり、設定が必要だったり、実装は結構難しかったり、面倒くさかったりすることも多いでしょう。
でも、そういう些事は実際に必要になってから学べばいいのであって、まずは楽をするための理想の雛形みたいなものがあることを覚えておくことが大切なのかな〜と勝手に思っています。

つまりは、単純な話になりますが、なんでも自分の知らないことが出てきたら、いったん調べて概念だけは理解しておくようにはしています。

一方で、業務に必要な、実際に利用する事柄については、なるべく自分で手を動かして動作を納得するようにはしています。よく分からないままコードを書くのは、精神衛生上あまり良くないですから。あまりに背後が複雑でやむを得ない場合もありますが……。

あと、IT業界こそ完全未経験だったわけですが、コンピュータそのものは昔から触っている世代(※7)なので、CPUやメモリに関する知識は、そこそこ持っていました(※8)。家では自作PCを使用しています。

また、前職で中小企業の事務をしていたときには、(勝手に)Excelに入力したものをマクロでAccessに取り込んで集計して書類を出力……みたいなことをしており、RDBについてのごく基本的な知識は持っていたので、そこは今の助けになっているかもしれません。

競技プログラミングは役に立った?

AtCoderへの参戦がモノグサへの転職のきっかけとなったという意味で、もちろん役に立ちました!

……などということが聞きたいわけではないですよね、ハイ。

まず個人的な結論から言うと、役に立っています。

ひとつ目は、計算量に対する感覚を養えたことです。
これは、計算量の見積もりが純粋にものをいう競技プログラミングを経験することで、大きく向上できた部分でしょう。
そして実は「計算量の削減ができるようになる」以上に、「必要ない最適化をせず読みやすいコードを書きやすくなる」ことが、より有効なのではないかと考えています。

ふたつ目は、とりあえずコードを書いてみるようになったという点です。
競技プログラミングでは、様々な課題を次々に解くわけですから、とりあえず大量のコードを書いてみないことには始まりません。コードを書き、消してはまた書き……ということを繰り返すことで、単純にコードを「書くという行為に慣れる」ことができたのは、よかったです。
まず動くプロトタイプを書く→動くことが分かったのできちんと書き直す、あるいは書いている途中でヤバそうな構造になったので整理してイチから書き直す、みたいなことを拒否感なくできるようになったのは、このお陰かもしれません。

そして最後に、競技プログラミング用のライブラリを全て自分で書いてきたことが、かなり良い経験になりました。必要なデータ構造に応じたクラスを作成し、内部状態の管理をどうするのか、メソッドは何を生やせば便利なのか……書いていくとすごく面倒そうに聞こえますが、結構面白いです。
しかも、この自分で書いたライブラリが、自分の成績に直結するのがまた楽しい。
今にして思えば、この経験は今の自分にとって結構大きかったです。

EdTechベンチャーに飛び込んだ感想

では、月並みですがここ2年の感想など。

少し上のほうで書きましたが、2年目には請求システムを freeeに移行するというのをやっていました。冷静に考えるとこれってすごいことだと思うんですよね。

いや、僕がやった仕事がすごいという意味ではないです。
未経験(ロートル)中途採用2年目に自社の請求システムをいじらせるって、あまり無いことだと思います。IT業界で実際のところどうなのかは知らないのですが、少なくとも僕の今までの経験ではあまりないことでした。
裏を返せば、これがベンチャーのスピード感(?)のあり様なのかな、などと最近では思っています。

ひとつひとつの仕事に対する裁量も大きいのですが、これは意外と中小企業に通じるものがあるかもしれません。なんでも気づいたことは自分でできるというあたりも。

ただ、運営については、ワンマン経営が多い中小企業とは違い、Tech系らしい透明性のあるシステムがつくられており、このあたりは成長して会社が大きくなっても大丈夫そうな仕組みなのだなぁと感じます。

また、モノグサには個性的で優秀な人が多く、緻密な議論から馬鹿話まで、叩けば鳴る鼓のように良い反応が返ってきます。いつもSlackでつきあってくれている人、ありがとうございます。

総じて、毎日刺激的に楽しく暮らしています。

最後に、ここまでお付き合いいただいた読者のみなさんと、僕を支えてくれている家族、モノグサの社員すべてに、感謝の言葉を。

……あ、忘れてた。
モノグサは、現在絶賛求人中です。
こんな僕でもなんとかやっていけてます……え、こういう書き方は良くない……?じゃあ、えっと、モノグサはみんな優しい人ばかりで安心して働けます!是非応募を!

参考

※1: エンジニアあるあるジョーク。0xを先頭についた数字は16進数の扱いです
※2: https://corp.monoxer.com/company/
※3: 日本語版 Dungeons & Dragons (TRPG) のベーシックとエキスパートのルールセットの通称
※4: 最近あまり使われないAAですが、床にがっくりと崩れている人を横から見た図
※5: 大阪出身なもので……
※6: 一例

※7: ベーマガ世代です
※8: 昔のPCはマニュアルにメモリマップが載ってたりしました