現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル

ITエンジニアに必要なスキル、と聞くとあなたは何を思い浮かべますか?特定のプログラミング言語でしょうか。よく言われるコミュニケーションスキルでしょうか。

おそらく、必要なスキルというのは数えきれないほどあると思います。そんな中で、現場で活躍している5人のプロの意見を集めてみました。もちろん今回ご紹介するスキルだけを習得すればITエンジニアとして生きていけるというわけではありません。しかし、一般的にいわれる「技術力」や「コミュニケーションスキル」という漠然としたものよりもはるかに具体的で、実際に現場で培ってきた人だからこそ分かる必要なスキルをご紹介いたします。

自分はどれに強く共感するのか、そんな風に考えながら読むとおもしろく、今後自分に必要な何かが見つかるかもしれません。

山田 あかね(purprin) ラクスル株式会社 CCO

2a67eeca3fa298f341ee2bc3e2ad0f53

 @purprin
エスカフラーチェLLC(Webサービスの開発・企画・制作・コンサルティング)、グリー株式会社(グローバル向けプラットフォームのフロントエンド開発)の経験を経て、2013年4月よりラクスル株式会社CCO(現職)。「お客様の心をつかむデザイン」に日々取り組んでいる。著書に「現場のプロから学ぶXHTML+CSS(共著)」などがある。

 

どんな時代がきても通用する普遍的なスキルが必要

次々と新しい技術が出てきては消えていくような世界ですので、特定で使えるスキルを持つこと以上に、どんな時代がきても通用する普遍的なスキルのほうが長い目で見てより重要なのではないかと感じております。

私が経験上大切と考えているポイントを2点ご紹介します。

 

1:関わる人たちの悩みの本質に寄り添い、適切な解決策を提案して信頼関係を築く

そもそも仕事とは、何らかの課題や問題を解決したり、誰かを楽しませたりすることがほとんどかと思います。たとえばとあるお客様が、今より売上を上げたいのでウェブサイトを作りたい、と相談してきたとしましょう。

そんな時、ウェブサイト制作業の方であればおそらくウェブサイトの制作をお手伝いするのが一般的です。しかし、「お客様が何に課題を感じているのか」「お客様は何を求めているのか」ということをヒアリングしてみると、必ずしもウェブサイトを作るという手段が最善とは限らないのです。自分の専門分野で解決してあげることができればそれに越したことはありません。

しかし、売上を上げるという課題を解決するために、お客様と共に考えて提案できたほうが、結果的にお客様を喜ばせることができます。企業の中で働くにしても独立するにしても、継続的にお仕事をしていくのであれば信頼関係が大切です。

すなわち、お客様の悩みや課題に寄り添うスキル、提案できるスキルというのはどれだけ磨いても損しないスキルではないでしょうか。

 

2:スキルの掛け算をして、強みを発揮する

刻一刻と変化する中で自分の価値を発揮し続けるためには、他と同じ土俵にならない、自分だけの土俵をつくっていくことが大切です。

単一の言語が書けます。といったスキルの場合、より賃金の安い国やクラウドソーシングのマンパワーなどを活用されてしまって、大切なスキルでありながらも同じ土俵で勝負するには価格競争となってしまい苦しくなる可能性があります。

そんな時、他に掛け算することでオンリーワンになれるスキルを磨いておくと、単なる価格競争とは違う場所で戦っていけると考えています。

たとえば:

Webマーケティングに精通 × PHPエンジニア =「実装と提案をスピード感もってできる」「仲たがいしやすい企画とエンジニアの通訳ができ、組織を円滑に回せる」という強みが発揮されるでしょう。

UIデザイン × エンジニアリング全般 = 少ない人材で頑張らなければならないスタートアップ企業などで重宝され、即戦力になるでしょう。

掛け算の数が多ければ多いほど、他の人には真似できないオンリーワンとして活躍できる可能性が高まります。わたしの経験則ですが、身構えすぎず、楽しめそうなスキルから少しずつ磨いていくことが近道だと考えています。

 

湯本 堅 GoTheDistance ブロガー、エフ・ケーコーポレーション番長

 

169091_150997108288141_1982068_n

GoTheDistance
Java・Flash/Flexのプログラマ・リーダー・PM(主に流通業)を4.5年→コンサルを1年半経験し、2009年4月に転職。現在ひとり情報システム部として自社業務システムの開発・運用及び新規事業企画、受託開発やITコンサルティング(内製に明るい為業務コンサルを得意としています)を仕事としている。2012年現在は、自社業務システムの開発一本に絞る。外販するためのものを作っている。

 

簡単に盗まれないスキルを

ITエンジニアは他の職種に比べても多くのスキルを要求されやすく陳腐化されやすいものもありますから、焦りを感じることも多々あるかと思います。しかし、陳腐化するということはそれは代替可能なスキルということです。なので、身に付けるべきスキルはそう簡単に盗まれないものであるべきです。今回は2つのスキルをご提案します。

英語

ITエンジニアが学ぶべき言語は開発言語ではなく英語です。

理由は単純で日本語と英語では、情報リソースが10倍違うからです。最新の技術をキャッチアップしようとする場合には英語で何が書かれているかが分からないと何のことかもわかりません。翻訳を待つには人生は短すぎます!GitHubにホストされている様々な有名なフレームワークの説明は全て英語ですし、コミュニケーションも英語でなされています。ググっても英語しかひっかからないことも多く、相当英語圏の方々に助けられました。ベストのトレーニングは英語でブログを書くことなんですが、gistに何かメモを残す時に英語で全部書き上げるというトレーニングから初めて見ても面白いと思います。

図解力

エンジニアの設計力を向上するにはコードを書くだけでは足りません。自分が作ろうとしているプログラムの世界地図を描いて表現することが求められます。プログラムに構造を与えて設計を行い、その設計を崩さずに柔軟性を保つことが出来ないと、機能追加に対応出来ずメンテナンスが困難なシステムになってしまいます。

その際に重要なのが、図解力です。自分が表現したいことを図を使って表現すると、どの要素がどのように互いに影響を与えていくのかを自分が理解しやすくなり、アーキテクチャを考える時に大いに役に立ちます。UML等の設計の図解ではなくパワーポイント等で使用するチャートを使って、自分が何を描こうとしているのかを客観的に見つめるトレーニングを積むと良いと思います。

 

長山 武史 いろいろデザイン(元はてなサービスディレクター)

 

1789543600_6bc0d8acd4

@nagayama
2006年、株式会社はてなにデザイナーとして入社。主にはてなブックマークの開発に携わり、サービスディレクターとしてタスクの管理からチームのマネジメント、サービス企画や意思決定までいろいろな業務を経験。2013年2月に退社し、いろいろデザインを設立。

 

自分の強みを活かせる仕事を自ら作り出す

はてなでの経験ですが、僕のチームにはたくさんのエキスパートがいました。検索技術、機械学習、iOSアプリの開発やフロントエンド。でもみんなはじめからエキスパートというわけではありません。まず日々の仕事の中で自分の強みに気づき、その強みを活かせるような仕事を自ら提案する。その繰り返しによって自らが仕事を作り出し、各々の専門スキルや社内での立場を築いていきました。

見つけた自分の強みや、興味を持った技術や仕組みを、会社の仕事に取り入れるにはどうすれば良いのか。どう周りを巻き込んで、実際の製品に反映していくのか。僕が優秀だと思うエンジニアたちは、それを実現する力を持っていました。こうしたスキルは会社に対してはもちろん、社外の活動においてもとても有効です。実際はてなにいたエンジニアの多くは、社外でも存在感を出していました。

人を巻き込むための4W1H

自分の強みを活かせる仕事を自ら作り出す。その基礎として「人を巻きこむ」というスキルが必要です。それにはひとりよがりではなく組織のみんなにも賛同してもらう必要がありますが、人にどう伝えるかということが意外と難しかったりします。
まずはこの人に伝えるスキルを伸ばすために、オーソドックスではありますが4W1Hに分解して明文化してみる事をおすすめしたいと思います。

 

why
「なぜ」それをするのかという理由が必要です。TEDのスピーチでも有名なサイモン・シネック氏も「まずWhyから始めよ!」と言っていますが、仕事においても同じ事です。

  • 「なぜ、パフォーマンスの改善が必要なのか」
  • 「なぜ、コミュニケーションの改善が必要なのか」
  • 「なぜ、この技術を社内で使っていくのか」

このように「なぜ」それをしたいのかという事を明文化することで、自分の目的をより明確にする事ができるとともに、周りの人からの共感も得やすくなります。

 

who次に「誰」。「誰が」やるのかではなく「誰のために」やるのかという点を明確にします。

  • 「この提案は、誰のためにするのか」

サービスを利用するユーザーさんなのか、社内のスタッフなのか、一緒に働くエンジニアなのか。この「誰」をペルソナ化し明確にする事で、問題がひとりよがりのものでなく具体的なその人の役に立つものになります。

 

whatじゃあ「何」をするのか。上で挙げたwhyとwhoを踏まえた上で何をすれば良いのかを考えます。

  • 「継続的インテグレーションを導入する」
  • 「社内Wikiを整備する」
  • 「iOSアプリを開発する」

目的を達成するために何をするのか、具体的に提示します。

 

howすることが決まったら、「どのように」それを実現するのかを考えます。

仕様書を作るのもよいかもしれませんが、プロトタイピングなどをして実際に触れるものを作ったり、現状を計測して目標値などを出すと説得力が上がります。仕様書だけをもとにした会議では、リスクばかりを考えてしまったり議論が脱線してしまう事があるのですが、実際のデータやプロトタイプを目にすれば「これを実現するためにはどうすればいいか」という視点で議論しやすくなります。

 

whenここでは「いつからいつまで」かかるのかを考えます。

自分の時間も会社の時間も限られていますので、それをするにはどのくらいの工数がかかるのかというのは目安としてとても大切です。まだあまり開発の経験がない場合は、時間をとりすぎてしまったり、逆に少なく見積りすぎて地獄を見たりという事があるでしょう。

そんな時役に立つのが、相対的に工数を計算する「プランニングポーカー」という手法です。目測でビルの高さを正確に測るのは難しい事ですが、「このビルより高い」「あのビルよりは低い」という風に相対化し、それをポーカーのように複数人で行う事でより精度を上げるというものです。詳しくは以下のURLを参照ください。

おわりに

自分の強みを見い出し、自らの提案でどんどんプロジェクトを進めていくメンバーに恵まれたお陰で、僕はとても楽しく仕事を進める事ができました。
この通りにしてもなかなか伝わらなかったり、伝える機会に恵まれない事もあるかもしれませんが、なぜ自分がそれをしたいのかを明確にし、そのアイデアを具体的にする訓練をつんでおく事で、自分の強みを活かすチャンスを逃がさないようにする事ができると思います。

 

村上 福之 株式会社クレイジーワークス 代表取締役総裁

 

fuku

@Fukuyuki
(株)クレイジーワークスの代表取締役総裁。電子書籍PF:androbookやameroadなどをバイアウト。最近「ソーシャルもうええねん」という本を書きました。自分の居場所が欲しいです。ITmedia オルタナティブ・ブログで”村上福之の「ネットとケータイと俺様」“を連載中。

技術をお金に換算して話す技術

エンジニアが身につけておくべき技術。それはたったひとつです。

技術をお金に換算して話す技術です。

たったこれだけです。これは、あなたが将来的に”一般的に高い“評価を得られるエンジニアには必須な技術です。なぜかというと理念がなくて偉い人はお金でしか善し悪しを判断できないからです。そして、ほとんどの偉い人には理念がないからです。

理念がなくて偉い人はお金でしか判断できない

どうしてこう思った経緯を書いていきます。

ぼくが初めてプログラミングを覚えたのは小学校4年生の頃です。1986年あたりでファミリーベーシックやMSXでプログラミングを覚えました。しかし、ぼくの母親は、よく思ってませんでした。1980年代において、子供というものは、外でドッジボールをしたりして遊ぶものです。黒い画面を凝視して意味不明な英数字を淡々とソースコードを入力する子供は、母親から見れば気持ち悪い以外、何者でもありません。

子供がプログラミングの高速化のために、いかに無駄なループを少なくすることに情熱を語っても、母親から見れば、キモいだけです。剣道で全国大会に出場して活躍している兄の方がよっぽどマトモに見えたと思います。

しかし、ある日、ぼくは当時流行っていたコンピュータのプログラミング雑誌に自作のプログラミングを投稿して、掲載されるようになりました。掲載謝礼の3万円が入った現金書留が、家に何度か送られてきました。母は驚きました。

それからというものは、あまり文句を言わなくなりました。ぼくはびっくりしました。ここで、子供心に理解したことがあります。

大人というものは自分が理解できるものしか、理解しない。 理解できないときは、お金に変えれることを示せば理解する

そうして、どうしようもないマイコン少年は、大きくなって、実際にプログラマの仕事をするようになったのです。その後、なんやかんやで、独立して、なんとなく会社を作ってみました。

最初はエンジニア根性で独自の技術を売り込んでいましたが、そういうのにお金を払うのは大きな会社だけでした。大きな会社の案件ばかり取ればいいのでしょうけど、それだけでは限界があります。

いろいろもがきましたが、最終的には面倒くさくなって、中小の会社向けには、他社のサービスやソリューションを完全丸パクリして、値段だけ下げたもの売るようになりました。なぜかというと、多くのソリューションは技術的価値よりも高い値段が付いていることが多かったからです。たとえば、いまだにメール送信サーバーに高いお金を払う会社がありますが、今やクラウドを使えばもっと安く作れるのは、Web系プログラマにとっては誰でも知っていることです。

理念も糞もない中小企業は技術のよしあしよりも、値段が高いか安いかくらいしか分かっていただけないので、いろいろ高度な技術を組み合わせて、すばらしいものを作るよりも、鼻くそほじりながら、ブラウザ上で、右クリックしてソースを見て、加工して、安くて、大手と同じようなものを作ったほうが評価が高くなることが多かったように思います。

ただ、そういうことばっかりやっていくと、エンジニアとして大切な魂がどんどん濁っていってしまうのは悲しいところです。

 

和田 裕介(ゆーすけべー) 株式会社ワディット代表取締役

 

profile_childfood

ゆーすけべー

Webアプリケーションエンジニア。株式会社ワディット代表取締役社長。未踏ユース準スーパークリエータ。株式会社オモロキではCTOとしてWebアプリケーション開発を担当する。代表作はWeb音楽プレイヤーの「君のラジオ」。オモロキでは人気お笑いサイト「ボケて」のシステム開発を務めている。カンファレンスなどの発表も多数あり、YAPC::Asia 2012では60ほどのトークセッション中、ベストトーク賞1位を獲得した。著書に『Webサービスのつくり方 ~「新しい」を生み出すための33のエッセイ』(技術評論社)がある。

哲学とスキルは違うと考えた場合

ラリー・ウォールがプログラマの三大美徳として無精・短期・傲慢を挙げていて確かにそうだと思います。その昔、知り合いのtypesterさんが「3回以上繰り返すんだったら自動化しちゃう」みたいなことを言っていてまさにそんな感じ。単調な手動の作業をプログラムで解決してしまうのはなんというかカッコいい。

ところでこのテキストは「ITエンジニアが身につけておくと良いスキル」について書くべきなんだけど、ラリーのそれはスキルというか意気込みのようなもので、いわば個人が持つべき「哲学」ですね。

では、スキルと言ったらなんだ?ってことなんだけど、コンピュータのちょっとした内部構造やプログラミングの文法、APIの設計手法、WebアプリやるんだったらHTTPからセキュリティまでまぁそれぞれです。当然身につけているに超したことは無い。ただ、そういうのは「パターソン&ヘネシー本」だとかyoheiさんの「Webを支える技術」とか徳丸さんの本とかで学べるからそちらにお任せしてしましましょう。だとしたら何をここで伝えたらいいか。うーん。

「わかりやすい文章が書ける」は武器

そういえば、僕、去年の11月にとある技術本を出版したんですね。評価はそこそこいいんだけど、初心者向けの本のくせに「コード載せすぎwww」みたいなリアクションがあったりして反省すべきところだと思いました。ところがレビューには、そのような批判的な意見を述べた後に「文章はとても読みやすかったです」って書いてあってすごいテンション上がります。

僕に限ったことで誰にでも当てはまることではありませんが、もしかして、エンジニアにとって「わかりやすい文章が書ける」ってのは武器になることもあるんじゃないか!って考えることが出来ます。エンジニアである限り作ったモノやコードで評価されることになりますが、なんだかんだ文章が大事になるシーンもあるのです。

例えばBlogに技術的な内容を書くにしても伝えるのは文章が手段になり、素敵なコードとそれに伴う文章をBlogに載せれば世の中から注目を浴びることになるでしょう。昨今のFacebookやTwitter、もしくは旧来からエンジニアにとってのコミュニケーションツールであるIRCでもテキストでやり取りをしていて、それらも短いけれど文章と言っていいでしょう。

いい文章と分かりやすい文章は違う

これは僕なりの仮説なんだけど。分かりやすい文章といい文章ってのはまたそれぞれ別の話で、いい文章というのは才能に起因する点が多く、分かりやすい文章というのはテクニックに依存する。なので分かりやすい文章を書くためにはひたすらBlogに文章を掲載し、読者のリアクションを計測する修行のような行為をするとよい気がします。

意外にコードと同じように論理的な側面も持っていて面白いです。まとめると、分かりやすい文章を書くスキルはITエンジニアにとって武器になる可能性もあるってお話でした。じゃぁねー!

 

いかがでしたか?

 

個性的なプロたちの意見、あなたはどう感じましたか?

競争相手は社内だけでなく日本中、いや世界中にいるITエンジニアという職業。今後どのように生き残ればいいのかを考えている方も少なくないと思います。この記事がそんな方々にとって何かの発見につながれば幸いです。

Reactions on Twitter

  1. @youchan より:

    なんというか、この中にロールモデルにしたい人がいるかというのがちょっと疑問。いいことは書いてあると思うけど、等身大感がないというか… / “現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル” http://t.co/GCuSI89RAJ

  2. @amadeusrecord より:

    この先生 きのこる・・・ http://t.co/TOKsPsRluU

  3. @naka_lec より:

    現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル
    http://t.co/taIznicT3q:英語は当然としても、図解力、人を巻き込む力、わかりやすい文章が書ける、など良いことが書いてある。そうだ、3年の「情報ゼミ」の目標と似ているではないか。

  4. @yohhatu より:

    「人を巻き込むための4W1H」はそうだよなぁと思う。他にも「お金」の話もそうだし。 現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル http://t.co/4IIs1RI79v

  5. @kamemoge より:

    答えているメンバーが結構個性的。自分の位置(能力)とか業界(プロジェクト)とかを俯瞰できると長生きできそう…まだ全然下っ端だけど / “現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル” http://t.co/yBBroLc1Mv

  6. @ebi より:

    「理念がなくて偉い人はお金でしか判断できない」ってすごいこというなぁ。ドキッとした。 / “現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル” http://t.co/OmCWpeqEZl

  7. @takatama_jp より:

    「大人というものは自分が理解できるものしか、理解しない。理解できないときは、お金に変えれることを示せば理解する」/ 現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル http://t.co/wFl0swNMLY

  8. @the_blue_time より:

    現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル http://t.co/HBAdvcvQ2E

  9. @naminaminet より:

    「大人というものは自分が理解できるものしか、理解しない。」身につまされます。■現場のプロに聞く!ITエンジニアが生き残るために身に付けておくといい7つのスキル http://t.co/AcgFnNHE4F