第一話 新人プログラマー、最初の席
四月の朝のオフィスは、誰のものでもない匂いがした。
夜のあいだ止められていた空調が吐き出す乾いた風と、拭いたばかりの机に残る洗剤の薄い膜の匂い。蛍光灯の白さは均一すぎて、まだ何も始まっていない部屋をいっそう空虚に見せていた。
佐藤翔太は入口で立ち止まり、自分の名前を探した。
十九歳。専門学校を出たばかり。
スーツの肩はまだ体に馴染んでおらず、安い革靴は歩くたびに甲を締めつけた。ネクタイの結び目が喉元に触れる感覚も、首輪のようで落ち着かなかった。働くということは、自分の名前をどこかに預けることなのかもしれない、と翔太はふと思った。
奥から声がした。
「佐藤君?」
振り向くと、三十代半ばくらいの男が、パーテーション越しに片手を上げていた。細いフレームの眼鏡。袖を肘まで折ったシャツ。表情は穏やかだが、机の上に積まれた資料の高さが、その穏やかさを少しだけ嘘っぽくしていた。
「木村です。今日から研修担当。よろしく」
翔太は慌てて頭を下げた。
「佐藤翔太です。よろしくお願いします」
自分の声が思ったより高く出た。少しだけ顔が熱くなる。
木村は気にした様子もなく、机の上から透明ファイルを差し出した。表紙には「新人研修計画書」と印字されている。日付ごとの予定、学習内容、使用ツール、提出課題、報告ルール。几帳面すぎるほど整った紙面だった。
「最初は基礎確認からやるけど、たぶん早めに実務も入ると思う。うちは人が多くないから」
木村は淡々とそう言った。
脅す口調ではないのに、その一言だけが妙にはっきり残った。
人が多くないから。
翔太は席に着き、黒いノートPCを見つめた。
薄い。学校で使っていた共有機よりずっと薄くて、閉じられたそれは、道具というより無口な生き物の背中のように見えた。恐る恐る指先で触れる。冷たい。自分がここで働くのだという実感は、その温度からしかまだ得られなかった。
周囲ではすでに何人かが画面に向かっていた。
誰も無駄話をしていない。キーボードを打つ音が雨粒みたいにまばらに落ちている。壁際のホワイトボードには案件名と締切日が赤と黒のマーカーで重ねて書かれていた。そのうちのひとつだけ、締切日の箇所に二重線が引かれている。理由はわからないのに、そこだけ目についた。
「JavaとC#は学校でやった?」
木村が椅子を半回転させて聞いた。
「はい、一応……基礎は」
「基礎はみんなやってるって言うんだよね」
そう言って木村は少し笑った。
笑ったが、目は笑っていなかった。
翔太はその瞬間、この人が優しいだけの先輩ではないと知った。たぶん何人もの新人を見てきたのだ。できると言ってできなかった者。返事だけ立派で消えていった者。教わることには慣れていても、自分で調べることを覚えなかった者。そういう記憶が、木村の言い方の底に静かに沈んでいる。
「わからないことは聞いていい。ただ、その前に十分は自分で考えること。うちのルール」
「十分……」
「短いようで長いよ」
木村はそう言って、自分の画面へ視線を戻した。
午前中の研修は、開発環境の構築から始まった。
アカウント発行。社内ツールの設定。IDEの導入。Gitの初期化。リポジトリのclone。ブランチ運用。専門学校でも似たようなことはやったはずだった。だが、会社の手順はもっと細かく、もっと曖昧で、どこかひとつでも違えば先へ進めなくなるような気配があった。
翔太はメモを取った。
だが本当は、理解したことを書いているのではなく、画面に出た言葉をそのまま写しているだけだった。意味が頭に落ちてこない。自分の手だけが先に動いている。
隣の席では、同じ新人らしい男が迷いなく作業を進めていた。
黒いターミナルに白い文字列が次々流れ、ショートカットキーを使う指にためらいがない。翔太は画面を見ないようにしながら、見てしまう。比べるつもりはないのに、比べてしまう。入社初日に、自分よりできる人間を見つける。たぶんありふれたことだ。けれど、そのありふれた出来事は十九歳の胸に、小さく確かな傷を残した。
最初のエラーは、昼前に出た。
社内ツールの設定ファイルが正しい場所に保存されていない。
画面には英語のメッセージが三行だけ表示されている。意味は読める。読めるのに、どう直せばいいのかわからない。翔太はマウスを握ったまま動けなくなった。背中にだけ汗がにじむ。
十分考える。
それがルールだった。
一分。ファイルパスを見直す。違いがわからない。
三分。再起動する。変わらない。
五分。社内Wikiを検索する。似た記述はあるが、自分の状況に合っている確信が持てない。
八分。隣の新人はもう次の課題へ進んでいる。
十分。
翔太は椅子を引いて立ち上がった。
木村の席までの数歩が、妙に遠かった。こんなこともひとりで解決できないのか、という羞恥だけが足を重くした。
「木村さん、すみません」
木村は画面から目を離さず、
「どうしたの」
とだけ言った。
翔太がエラー画面を見せると、木村は数秒で原因を見つけた。
「ああ、保存先が違う。これ、初回でよくある」
操作しながら、木村は続けた。
「エラーってさ、慌てると文字じゃなくて壁に見えるんだよ。壁に見えたら、一行ずつ分解するしかない」
翔太はうなずいた。
励ましというより処世術だった。壁は越えるものじゃなく、分解するもの。その考え方は、コードだけでなく、たぶんこれから先の仕事全部に関わってくるのだろうと思った。
昼休み、新人たちは近くの定食屋に連れて行かれた。
日替わり定食の湯気、揚げ油の匂い、壁際のテレビの音。会話は最初、出身地や学校の話で始まった。
「前の会社でも少しコードは書いてたんですよ」
隣の席の男が言った。久保田という名字だった。二十代後半、転職組らしい。
「でも業務系は初めてで。ここ、思ったよりちゃんとしてますね」
思ったよりちゃんとしている。
その言い方に、翔太は少しだけ救われた。自分だけが場違いなのではなく、誰もが多少の見込み違いを抱えて職場に入ってくるのかもしれない。
「佐藤君は新卒だっけ」
「はい。専門出て、そのままです」
「若いね。吸収早そう」
そう言われても、翔太はうまく笑えなかった。
若いというのは、たいてい褒め言葉として使われる。けれどそれはときどき、「何も持っていない」という意味にもなる。知識も、実績も、潰しの利く肩書もない。ただ、失敗してもまだやり直せる年齢だというだけのことだ。
午後の課題は、簡単な計算処理を行うプログラムだった。
A4一枚の仕様書。条件分岐と繰り返し、例外処理を使えばできると木村は言った。だが「できる」と言われた瞬間から、翔太には、できないものの輪郭ばかりがはっきり見えるようになった。空白のエディタ。点滅するカーソル。何も書かれていない事実が、ここまで人を責めるとは思わなかった。
最初の一行を書くまでに、十分以上かかった。
書き始めても進まない。変数名で迷い、if文の条件で止まり、コンパイルエラーで息が詰まる。余計な空白。括弧の閉じ忘れ。型の不一致。画面に出る赤い文字列が、すべて自分の未熟さの別名に見えた。
それでも翔太は席を立たなかった。
一行戻り、読み返し、もう一度実行する。何度目かの修正のあと、ようやく期待した数値がコンソールに表示されたとき、胸の奥でごく小さな何かが鳴った。達成感というにはかすかすぎる。けれど確かに、自分の手で何かを通した感触だった。
「できた?」
振り返ると、木村が立っていた。
「はい……たぶん」
「たぶん、のまま出すと後で痛い目みるよ」
そう言いながら、木村は画面を確認した。しばらく黙ってから言う。
「動くね。でも、動くのといいコードは違う」
翔太は息を呑んだ。
木村はモニターの一点を指した。
「ここ、処理まとめたほうがいい。あと変数名。自分だけがわかる名前にしない。コードって、未来の他人に向けた文章でもあるから」
未来の他人。
その言葉が妙に残った。コードは機械に読ませるものだと思っていた。けれど本当は、人間に読まれる。しかも、たぶん疲れた人間に、急かされた人間に、機嫌の悪い人間に読まれる。そう考えると、一行を書く意味が急に変わる。
定時が近づくころ、オフィスの空気は朝とは別の濃さを持ち始めていた。
疲労の匂い。誰も大きな声を出さないのに、沈黙がせわしない。メールの通知音。遠くの咳払い。椅子のきしみ。翔太が帰り支度をしていると、奥の席で誰かが小さく舌打ちした。
反射的にそちらを見る。
モニターには細かな文字がびっしり並び、誰かが低い声で言った。
「本番で?」
別の誰かが答える。
「いま戻します」
木村はその会話に割って入らず、給湯室へ向かった。戻ってきた手には紙コップのコーヒーが二つあった。そのひとつを、舌打ちした男の机に置く。
「糖分いる?」
男は顔を上げずに、
「助かります」
と言った。
それだけだった。
怒鳴る者もいない。大げさな励ましもない。ただ、問題が起きれば誰かが黙ってそこに加わる。その静けさが、翔太にはむしろ怖かった。ここではたぶん、取り乱すことすら仕事の邪魔なのだ。
「佐藤君」
帰ろうとしたところで、木村に呼び止められた。
「初日、お疲れさま。明日からもう少し実践的なのやるから」
「はい」
「あと、一個だけ覚えといて」
木村は紙コップを口元に運び、少し間を置いて言った。
「この仕事、向いてる人って、賢い人じゃないんだよ。壊れても、直すのをやめない人」
翔太は返事ができなかった。
向いているかどうかなんて、今日一日でわかるはずがない。けれど、自分が壊れる側なのか、直す側に回れるのか、それはこれから何度も問われるのだろうと思った。
会社を出ると、夕方の空は群青に沈みかけていた。
ビルの窓に灯る明かりが、巨大な基板の上のLEDのように見える。信号待ちの人波のなかで、翔太はバッグの中のノートPCを意識した。会社の貸与品。自分のものではない。だが今日、その中には確かに自分の書いたコードが残っている。たった数十行。それでも、それはこの世界のどこにもなかったものがひとつ増えたということだった。
その事実だけを支えにして、翔太は駅へ向かった。
背後のビルでは、まだいくつもの窓が明るいままだった。




