As Sloth As Possible

可能な限りナマケモノでありたい

タグ:仕事

ウープスデザインブログ >> デザイナとの打ち合わせってどうすればいいの?を読んで、ほー、と関心する一方で相当考え方が違ったので面白くなって書いてみる。仕事の進め方、プログラマ編。

あ、でも先に言っておくと、俺は「ベンチャーで、Webで、デザイナもディレクタも社内の人間で、自社サービス」っていう非常に限られた領域でしか仕事をしてきたことがないので、今から書くことがプログラマ一般に適用できる話だとは思ってません。タイトルはそういう意図。なので、あくまで上記の前提条件があった上での話だと思って読んでください。

1.やりたいことをある程度洗い出す

「なんかやりたい」とかいう漠然とした要望では流石に「で、俺は何作ればいいのよ」と答えたくもなるので、ある程度まとまるまでやりたいことを出してきて下さい。でも、ここで重要なのは全部洗い出す必要はないってことです。やりたいことがはっきり形になるまでには時間がかかるし、作ってる最中に絶対に軌道修正したくなります。あまつさえ方向転換したくなることもあります。最初から完璧な完成形が見えてる人なんていないんだから、当然です。

作ったものを修正しなきゃらななくなったとしても、無駄ではありません。思い付きであっちこっちフラフラするのはダメすぎますが、作ってる最中に、考えてるときには見えなかった問題にぶつかったり、より良い案が見つかったりすることは多々あります、というか無いことの方が珍しいです。そんなときに「でも、これだけ時間かけちゃったし、リリース予定日も近いし、今さら後戻りするわけには…」なんて言い出すくらいなら、最初から時間をかけなければいい。さくっと考えてさくっと作ってみて、直しては進め、進めてはまた考えていけばいい。1ステップにかける時間が少なければ、何度もステップを重ねられるし、どこかの時点までの作業が無駄になるとしても損失は少ない。

よく、気合いの入ったpptの画面設計書とか作ってくるディレクタさんがいますが、あれはやめて欲しい。プログラマ相手なら、顔付き合せて話して、その最中にホワイトボードに適当に絵でも書いてくれれば十分です。もし先にしっかりしたイメージを用意したいなら、デザイナさんにイメージを作ってもらうか、もっと言えばマークアップエンジニアさんにモック(システム的な部分は作り込まず、HTMLでガワだけ作ったもの)を用意してもらった方がありがたいけど、それだって時間がかかるので絶対必要なものではないです。パワポを書くのに時間を掛けるくらいなら、適当でもいいから動くもの作ってそれについてあれこれ議論した方が有意義です。要素だって、「その機能に必要なもの」を出してくれさえすればそれ以外はあとからどうとでもできる。細かい文言とか先に全部決めちゃっても後から直すはめになるのだから。

2.優先順位をつける

上記で羅列した内容に手書きで順番を付けるだけで構いません。初歩的なことですが、これをしておくと「どうでもいい機能を作り込んでしまったばかりに本質的なところが時間に追われて間に合わせになる」などおかしなコトにはならないハズです。さらに、優先順位がしっかりとプログラマに伝わるのでそれらの意図を組んだ上で機能的に分かりやすく意味付けしてくれるハズです。多分。

3.希望する見た目を添付する

まぁ、プログラマには、いらんと思います。競合になりそうなサービス、とかは勿論チェックしますが、あんまり「こういうの!」って言われるとそれを作っちゃうので注意です。「Twitterみたいの!」って言われるとTwitter作っちゃいます。いや、それは作る側の問題ではあるんだけど。

4.経緯、展望を話す

ここまでに何度となくプログラマとディレクタの打ち合わせはしてると思いますが、その中で経緯と展望を話すのを忘れないでください。つまり、経緯と展望を話すのを忘れないでください。大事なことなので二度言いました。ここまでの手順を踏んでいるだけでは、何も聞かされないで仕事を振られるよりはいい、程度の仕事ができるだけです。「何でそれを作りたいのか、それをどうしたいのか」が伝わっていないと、諸々の理由で見当違いのものができてくることが多々あります。バックグラウンドが共有されていれば、技術者として、作り手としてのアドバイスや新しいアイディアが出せるかもしれません。でも、ただ「これやって」だと、良くわかんないけどやっつけで作っちゃうとか、良かれと思って作り込んで明後日の方向に暴走するとか、結構な確率で起きてきます。

だから経緯と展望を話すのを忘れないでください。三度言いました。

5.質疑応答

ちょっとやっては直し、直しつつ考え、考えつつ作る、みたいなことをしてるとお互いが質問しあうのが日常になってると思いますが、億劫がらずに答えてあげて下さい。逆に、忙しそうだから聞いちゃ悪いかな、とか、こんな初歩的なこと聞くのもアレかな、とか、そんなこと思ってないでどんどん聞いて下さい。

こんなことを公言するのもどうかと思いますが、面倒臭いという理由で聞きたいことを後回しにしたり、質問されたときに「あとで確認しときます」とか答えたりするような悪癖を持ったfaultierとかfaulistとかとにかくfauがつくなんとかって人がいたりしますが、そういうのは悪いナマケモノなので、良いナマケモノに育つよう叱りつけてやって下さい。ごめんなさい。気をつけます。

最後に

こういった流れを踏んでおくと、物事が前後したり抜けたりしてもお互いスムーズに気持ちが良く仕事が出来るハズです。一緒に仕事をしてるディレクタさんですごく気持ちよく仕事ができる方がいますが、その人と仕事をしてるときは実際これに近いことをやってくれてたりします。

開発の作業は間違うとその損失を取り戻すのに長い時間がかかってしまうこともしばしばありますが、大抵そこに至るには「間違ったまま進んでしまった」ときです。それらは納期を脅かし、コストにも影響しますので、ついつい「しっかりやろう」としがちです。逆に考えるんだ。何回か間違えてもいいから、進むときはより良い方向に進む、こうすればいいじゃないか。最初に全部準備しようとか、一度決めた方針や納期は変えないとか、そういう鈍重さはWebサービス開発にはいらないと思うんだ。コストや納期のことを考えればこそ。

今回はfaultier目線で書いてしまったのですが、自分自身も相手の立場にたってより良い提案や先回りの仕事をしていきたいと思います。

重ねて言いますが、これが外注先とのやりとり、とかいう話だったら元記事の手順がきっと当然なのかもしれない(というかその世界を知らないのでなんとも言えない)。加えて元記事はデザイナの話で、俺はプログラマの話。仕事の流儀が違うことも多々あるかもしれない。とはいえ、少なくとも自社のWebサービス開発でディレクタもプログラマもデザイナもみんな社内の人間なんだったら、もう少し良いやりかたがあるんじゃないかと思って書いてみた次第です。

追記

危うくスルーするところだった。

プログラマ編。同じような手順を踏んでいて、違う目線で書いてあるので面白い。でも経緯と展望のところは一緒なんやね。表側(デザイン)と裏側(プログラム)の違いが良く分かる感じ。

違うよ。全然違うよ。違いは表側か裏側かなんかじゃないよ。少なくとも俺は自分が作ったシステムが「動き」になってどういう風にユーザの前に表われるかまで考えて作るし、デザイナだって「一枚絵」じゃなくてどう動くかまでを考えて描くでしょ。どちらかがどちらかしか見てないとすればそれはそれで大問題だよ。

本質的な違いはそこじゃない。何で「最初に万全に準備を整えて後のリスクを減らして下さい」に対して「最初にコストをかけようとしないで細かいステップで進んで下さい」っていう真逆の発想に至ったか、そこに横たわる溝がなんなのかを考えて欲しいなー。

先週末大学のサークルの同期と旅行に行ってきたときに、就職先の話題になって、意外とSEになる人が多いということを知った。先輩達もそうだけど、同期の皆も、世の中というものに疎い俺ですら聞いたことのある大企業に就職していく。ここで名前を挙げるのが憚られる程度には名の知れた大手SIerばかり。

タイムリーにもIT業界ってどうなのよ?って話題が盛り上がってるみたいだし、彼らが情報技術にとりたてて興味があったという話も聞いたことがなかったので、すこし気になった。で、何故その職を選んだのかとか、将来的にどうして行きたいのかとか聞いてみた。その彼らが口々に語る夢――より正確に言うならば、計画――を聞きながら、少しだけ暗澹とした気分になった。「最初は現場で1、2年プログラミングの経験を積んで、その後は出世して上流工程をしきるんだよ」「俺は金融の専門家になるんだ」「私、パソコンとか全然わかんないけどこの仕事になっちゃった」「ああ、俺も俺も。あんまよく知らん」「技術を極める人はすげぇと思うけど、別に俺はそれをやりたいとは思わないし、実装だけやってる人に将来性ないよね」「ていうか、実装は下請けの会社がやることで俺らがやることじゃないよな」…etc。

ああ。スーツの世界がそこに広がっているのが見えた。そこそこのネームバリューのある大学名を背負い、逸般人の俺なんかが持ち合わせていないコミュニケーション能力とやらを駆使して、彼らは社会を動かしていくんだ。技術的な素養も情熱も理解も無いままに、政治力と資金力とスーツがものを言う世界でさ。

いや、俺や俺の周囲の環境が(少なくとも今現在の日本では)特異なのは理解してる。Web系とSI系じゃやってることなんか全然違うだろうし、「趣味グラマが叶える夢」と「選択肢の一つとしての職業的SE」じゃ見据えてる将来も全然違うだろうし。それ以前に、「優秀な」彼等と「変人の」俺とはそもそも住む世界が違ってて、たまたま同じ時間同じ空間で歩んできた道が交わってしまっただけなんだろうし。だからそのとき感じた違和感や憤りやなんかをどうしたいとも、思わない。

けど。

ああ、こいつらとは一緒に仕事をしたくないな、と思ってしまった。まぁ多分一緒に仕事をしてくれと頼まれる日も来ないだろうとは思うけども。

追記

思ってた以上に反響が大きかったので多少の追記を。

まず、SIerなどと一括りにしたけど、もちろんSIerにもはりぼてのスーツばかりじゃなく素敵なエンジニアは山程いる。実際に面識のある方々は、ハッカーでギークでクリエイターで匠だった。多重孫請け構造の大手SIerや末端の零細下請け会社は酷いと「聞いて」はいる(もちろん見たわけじゃない)が、一方で自社に技術を抱えている中堅SIerは技術力もエンジニアの意識も高い「らしい」とは「聞いて」いる。

それから、WebとSIは違うと言ったけど、当然ながらWeb系でもどうしようもなく能力や意識の低い連中を見たこともある。というか、SIやら組み込みやらより技術的な敷居は低いんじゃないってブコメの指摘はもっともで、敷居が低い分下限も低かったりして、SI系が「なんとなく金になりそう、出世できそう」ならWeb系は「なんとなくカッコよさげ」って理由だけで入ってくる人もいるしピンキリって意味ではどっちもどっち。

たまたま俺は、マッドエンジニアを自認する師匠と出会えて、その背中を追うべき匠たちと交流を持たせてもらってる。今働かせてもらってる会社には、俺なんかじゃ足元にも及ばないような超人や超変人が跋扈していたり、刺身にタンポポを乗せるどころか自分で舟盛りでも作りかねないマークアップエンジニアがいたりする。そんな幸運を享受しているからこそ、彼らの発言を呆れたものと認識できたし、自分は意識を高く保っていようと自戒することができた。でも、もしそうじゃなかったら、もしかしたら彼らと同じようなことをのたまってたかもしれないし、あるいは彼らが乗っているレールから足を踏み外して、あごで使われてるかも知れない。

つまるところどっかがおかしいんだろうな。学生がアホなだけでなく、文鎮がじゃまなだけでなく、もっと全体的に根本的に。なんとかならないかな。なんとか、したい。「どうしたいとも、思わない」なんて言ってないで、状況を変えるために今後何かして行けたらな。

ここのところ、求人に応募してきたプログラマやシステムを手伝ってもらう外注先企業に、どんな質問をしたらいいかについて意見を求められることが度々ある。いや、そんなの俺みたいなワープア学生アルバイターなんかじゃなくてシステム部の偉い人か凄い人に聞いてくれよって話ではあるんだけども、欲しがってる人材がどうやら俺みたいな頭のネジが足りなかったり多すぎたり変なところにささってるような人らしいので、参考程度にしといてね、と念を押した上で考えてみる。

求人に応募した経緯とか、仕事に取り組むスタンスとか、待遇やらなんやらについての希望とか、は面接担当者が普通は聞くと思うので、俺が聞いてみたいとしたらこんな感じかなー。

  • よく使うWeb上のサービスは何?最近注目してるものはある?
  • 好きな言語は何?
  • 好きなOS/ブラウザは何?
  • 普段使ってる開発環境って何?

いやいやいや、もちろん面白いこと言ってる人がいたらお友達になりたいからオタクを探してるとかそういうことじゃなくてね。うん。趣味が合いそうな人を探してるとかじゃなくて。

一番最初のは、これからWeb上のサービスという素材で、アイディアと技術で勝負しようって会社にわざわざ来る人が、技術にも流行にも興味ないんじゃ話にもならないんで当然聞いておくべきだと思うこと。後の方は何て答えるかじゃなくてどういう答え方をするかが興味ある質問たち。数ある中から一つを「好き」になり、かつその理由を人に述べるまでに至る人は、その裏で他のいろんな技術・思想に触れてそのメリット・デメリットについて判断を下してると推測できるから、そういうことが出来る人は少なくとも「ある一つのこと以外を知らない、知ろうとしない、その現状を無批判に受け入れる」人よりは数段この仕事に向いてると思う。うちらがやる「仕事」は、決められた「作業」じゃない、問題解決と創造ですから。

あとはちょっと前に流行ったfizzbuzzでもやってもらったり、ちょっとボケてみてツッコミを見てみたりするかな。

以上、面接をすることはもちろん受けたことすらあんまりない、とあるナマケモノが妄想してました。みなさんは面接したとき/するとしたらどんなことを聞きますかね。

一応所属部署の上司と一緒に働いてる皆には伝えたのでもうここに書いてもいいかな。昨年末からアルバイトとして働かせてもらっていたとあるITベンチャーを辞めることなりました。来月。関係者のみなさま、というかここ読んでる関係者の人なんてほとんどいないのでピンポイントで約一名の尊敬すべき師匠に宛ててるのだけども、本当に御世話になりました。ってそれはまだ早いか。

今度は某readerを作ってる会社に入ることになった。基礎固めのためにも中堅SIerとかで修行してきたら、とも言われていて、それも考えてはいたのだけど、次のアクションを起こす前に一番入りたかったところから使ってやると言ってもらえたので。決まったからにはそれはもう存分に暴れてきます。待て。暴れるな。

まぁ今色々と思うところはあるのだけども、それはまた別なときに書くことにしよう。

昨日、会社でかなりショッキングな事態が発生した。詳しくは言わない方が吉だろうな。

こんな言い方をすると、その「事態」の影響が直撃した人に対してもそれを免れた人に対しても失礼かなとは思うが、俺にとってはある意味でプラスの効果をもたらした。

会社を出る決意をした。その踏ん切りがついたから。

今後のことを考えたらまぁ多分出た方が自分にとってはいいんだろうな、でもここに残れば色んな種類の即効性の利益が得られるんだよね、それに俺が今いなくなったら困る人もいるんだよね、とかぐるぐる考えてたけど、事態が急変してしまった。結果として、後ろ髪を引くその見えない無数の手は弱くなった。今まで甘るな自惚れるなと自分に言い聞かせて越えようとしてた心理的な障壁が随分と低くなった。

ちょっとばかしスロースターター過ぎる就職活動。まぁいいさ。どのみち「まとも」な道なんてはなから俺が歩く道じゃないんだから。


ふぅー。言われたこっちが恐縮してしまうほどありがたい言葉をもらって色々と考えてしまった。


正直なところ、今のバイト先は非常に居心地がいい。仕事はそれなりに難しくてそれなりにやりがいがある。一緒にやってるメンバーはいい人ばかりだし、勝手に師と仰いでる、なんで俺なんかがこんな人と出会えてしまったんだろうというぐらい凄い人もいる。学生の身分にしては結構なお金を貰った上、結構好きにやらせてもらってる。煩わしい就活なんかも経験しないで済んでいる。親父や友人の話を聞く限りだと、多分これは割と得難い幸運なんだろうなと思う。


だからと言って今のままでいてはいけないことも自分でも薄々気付いてた。今の自分はまだ、贔屓目に見ても能力的にはせいぜい並のプログラマだし、経験や実績が足りないんだからまだまだ全然未熟だ。早くから自分の能力を発揮する場を与えられたことは幸運でもあるけど、本当なら「溜め」のフェーズであってもいい時間を自分から手放しているわけだし。今のままでもおだてられれば木ぐらいは登れるし、日々鍛錬を怠らなければそのうち屋久杉みたいな大木にも登るかもね。だけど、まぁ空を飛ぶのは無理でしょう。じゃあ溜めをたっぷり作れば空を飛べるんかというと、そんな保証はない。だから心のどこかでそれでもいいかなと甘えてたのは否めない。


ああ、だから一旦ここを離れてしっかり鍛えてもらってからにすればいいんじゃないなんて指摘は、まったくもって正しくて反論の余地もない。おまけにそれを、俺に対しての期待を込めて言ってくれてるんだから、聞き流しようがないじゃないか。


とりあえずは外を見てみよう。話はそれから。幸いなことに、俺の不精と上司の不精が連鎖して(笑)、今の会社とは口約束以上の話は何もしてない。ここで頑張るにせよ他で頑張るにせよ、選択肢は沢山あっても今のところ損にはならない、か。




↑このページのトップヘ