@kyanny's blog

My thoughts, my life. Views/opinions are my own.

Bizmates Program: Level 3 Rank B Lesson 18: Repeating the process

ミスクールと。今日はどうだった?忙しい日だったよ!昨夜から疲れてて午前中休んで昼から働いたので勤務時間が短かったのに、普段の倍くらい仕事量があったんだ。それに前にちょっと相談したアレの件もあって、まあ、こうなることは予想してたけどね。などとひとしきり愚痴めいた話を聞いてもらい、ありがとうと言ったらクールに「いいのよ、話を聞くのも私の仕事のうちだから」と。忙しさの一因であるとある件については一言言いたげだったが、言い淀んだ後で「いや、レッスンをしなきゃいけないのだから、やめましょう」と。

Lesson 18 の Try から。最近の例ではないし、「意思決定から何を学んだか」みたいな質問に対する回答としてはいまいちだったけど、前職でアサインされた仕事にまつわる話をした。外部システムとの連携機能を作るタスクだったが、締め切りもあまり余裕がないうえに事前に連携先からの技術監査を受けてパスする必要があり、その締切が近くて厳しかった。監査をパスしないと全体のリリーススケジュールも遅延するため、監査を一発で通す必要があるが、そのためにはこちらのシステムが完成して実際に動作している状態で結合テストをしなければならない。そしてこちら側のシステムはまだ俺が不慣れな Go で書く必要があった。短期間で Go で実装し終えるのは無理と判断して、しかもヘルプも望めない状況だったので、監査をとおすためのプロトタイプというかダミーのシステムを慣れた Ruby で作り、その後 Go で既存システムに追加機能として実装し直す、という方針で進める意思決定をした。「学び」は、やはり不慣れな技術だと想定以上に時間がかかる、あと「シンプルだが冗長で書くコード量が多い」Go は「洗練されていて書くコード量が少ない」Ruby と比べると実装時間も多く要した(慣れを差し置いても)、そして諸々の締切が近かったのですぐに実装作業に入ったが、やり始めると仕様が決まってない部分が出てきてそこを詰めるのにも結局時間を要した。「次やるとしたら」は、そもそも最初に仕様を明らかにするなどの作業に時間を使い、現実的なスケジュールを提案し直す、あと既存システムが Go で書いてあるからと Go で作ることを所与の前提と考えずに、独立したシステムを Ruby で構築することを提案する(その会社は Go と Python を好んでいたので、どのみち Ruby にゴーが出るとは思えなかったが)、などという話をした。技術的な専門用語がたくさん出てきて正直小難しくて伝わりづらい話だったと思うが辛抱強く理解のための質問をしながら聞いてくれた。

残り二分切っていて、「残り二分ね、ウム、」とそこでレッスン中断しようか迷った様子だったが、「anyway、Act やりましょう。別のストーリーを」と進み、これは前にも何かのレッスンで話した、外国人マネージャーの部下に他の外国人全員つけて「英語でコミュニケーションしやすかろう」と良かれと思ってたら「疎外感がある」と言われて裏目だった、stupid decision だったと言ったら「mistake ではあっただろうけど stupid とは思わないわ」などと、今日はクールででも優しいいつも通りのミスクールだった。いつも話が長くてわかりづらい生徒でごめんよ。

Lesson 18 まで終わり、次は Lesson 19 の冒頭から。明日はミスターヒップホップを予約した。

  • concern
  • It was only my second month at the time and I was assigned a project
  • It went successful
  • I should've spent more time for clarifications