最初のプロジェクトでフレームワーク作りながら仕事の大変さを学んだ話

1 / 2 ページ

JOIN

社会に出て派遣社員を始めた当初、はじめてまともなプロジェクトに入ったのがXMLを積極的に活用したフレームワークを作るという新規プロジェクトだった。StrutsのようなJavaのWEBアプリを作るのに、XSLTを使って自動生成のコードを吐き出して楽をするというもの。当時としてはかなり先進的な試みのプロジェクトだったと思う。この会社は1000人くらいの規模の会社で、SI(受託開発)をやっているところだった。
社会に出るのが遅かったので、年齢は25だったけど新人みたいなものだった(逆算すると2001年頃らしい)。プログラマーとして仕事するのはそのプロジェクトがほとんど初めてと言っても言い過ぎではないくらいだったのだ。
派遣に教育するようなシステムは無いので、それまで一年間かけた修行の成果を発揮してやっていた(修行の話)。
一年プログラムしか書いていない自分なので、会社のことはよくわからなくても、作る事自体では足手まといになる事は無いとわかった。Linuxの利用が増えてきていた時期だった事もあり、自分のやってきた事がダイレクトに現場で生かせるケースは多かった。知らない事も沢山あったので、失敗もしたが、それなりにやれていたと思う。
チーム自体はフレームワークチームとアプリチームがあって、僕はフレームワークのチームにいた。ぺーぺーの派遣社員がいきなりそんなところに入れたのは、もともとその部署の派遣社員率はかなり高いために寄せ集めチームだった事や、フレームワークのチームのトップが隣のシマで働いている僕を引っ張ってくれた事によるらしい。実はそれまで一度も口を聞いた事は無かったのだけど、初めて仕事の上で認めてもらった気がしてちょっと嬉しかった。

学んだイロハ

さきに書いた「シマ」とか「リスケ」なんて言葉をはじめて知ったのがその頃だ。会社やプロジェクトでの用語を吸収したのがこの時期だったような気がする。「ご苦労様です」「お疲れさまです」も初めてだった。どう返して良いのか最初サッパリわからなかった。バイトしていた時もこの言葉を聞いた覚えが無かった気がする。今振り返ると不思議だ。
タバコを吸わない自分でもタバコ場で話をしに行くと物事の全体像がわかると理解したのもここ。
チームでJavaがわかる人はあまりおらず、その社内で一度アプリを作る時間を作ったりしていた程度だった。僕は少しだけ先に個人的にサーブレットやJSPを扱っていた事もあって、良さそうな本を紹介したりしていた。紹介した本が何冊もその現場に買われる事になっていたのはちょっと面白い光景だった。
外部の会社も巻き込む形になっており、かなり大きなプロジェクトになってしまっていた。今振り返ると「初めて作る(まだ作り途中)のフレームワークを使って、急造チームで顧客の業務アプリを完遂。しかも社外にも提供しながらやる。」という、無茶なプロジェクトだった。
最初は確かGWの時期か何かでフレームワークを急いで完成させるということがミッションだった気がする。何回か泊まりもやった。根を詰めて何かをするというのは大学院の研究からずっとやっていた事だったから、大き過ぎるストレスになるような事は無かった。…この頃は。

社外とのメール

作る仕事以外に最初にアサインされたのはメール受けの窓口のような仕事だった。相手からの質問事項をエクセルに貼る仕事。今思えばそんな単純作業だったのだが、コードを書く量が多かったり、アプリチームのサポートの窓口のようなこともしていたりしてとても手が回らない状況だった。
また、メールの書き方を全く知らなかったので「お世話になっております」とか「お疲れさまです」のような言葉を挟む事無くいきなり要件を書いてしまっていた。それは先方に良い印象を与えないと教えられたのは暫く経ってからだった。とは言え、取って付けたようなそれらの言葉になんだか違和感を覚えてもいた。今は当然のように書いているけれど、気のない言葉に見えて仕方が無かった。
顔を合わせた事も無い人とのメールのやり取りがとてもストレスになると学んだ。ちょっとした言葉尻で自分も相手も不愉快になっているような気がした。

聞き出したり、教えたり

特にアサインされた訳ではないが、アプリチームの要望を聞き出してフレームワークチームの作業に反映させるポジションにいつのまにかなっていた。僕の大学ノートには問題点や要望がギッシリ書き込まれて、フレームワークチームにそれを伝えて対応策を練る。それをまたアプリチームのメンバーへ個別に返答する。
また、新人のメンバーもアプリ開発に入っていたので、「ドーピング」と称してとりあえず今必要な知識を植え付けるようなこともやっていた。もちろん自分のコードも書く。たまに仕事が溜まり過ぎると自分の仕事ばかりやってしまい、他の人の質問に答えられずに、全体が進まない事があった。当時はこのあたりのさじ加減ができていなかったと思う。

大きな失敗

オーバーワークが続いていた事と、チーム内での意思疎通ができていなかった事からかなり痛いデグレード(今まで動いていたものが動かなくなる事。これをやるとかなり恥ずかしいし、みんなが辛い)を起こした。
この前後、意思疎通の齟齬からかなりの手戻りが発生していて、精神的にも肉体的にも納期的にもギリギリの状態に追い込まれていた。酷い実装をされてしまっていた所を徹夜でリファクタリングしたのに「それがちゃんと動く保証がありますか?」という一言で全て元に戻すようなことがあったりして、かなりストレスの高い状態にもなっていた。この頃はどうやって動く事を保証できるのかもわからなかったし、それに時間とコストがかかるという事もよくわかっていなかった。
フレームワークのデグレードはかなり影響が大きく、自動生成後のアプリのコンパイルができない状況。正直かなりショックで、その日は仕事にならないので20時に帰された。これでもかなり早い帰りだ。この晩は本当にショックで、会社に関係ない友人にちょっと泣き言を言った。カッコ悪かった。

これが炎上か

暫くしてプロジェクトチーム全体が客先に行く事になった。今思えばこういう状況は末期に近い状態なんだろうなと思う。

みんなの読んで良かった!