TitaniumMobile勉強記

Web系エンジニア向けのキャリアアドバイザーやってましたが現在はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連(Node.js、Titanium)あたり

自分のエピソードを引き出すためのプロダクト/ポートフォリオを作る

お客さんとなる方との打ち合わせで

「xxxはどの程度できますか?」

という質問をされることが多々あるかと思いますし、実際自分もここ1年弱の間にこういう打ち合わせを何度か経験しました。

この辺りでちょっと思う所があるので少しまとめておこうと思います。

出来る・出来ないの質問ではそもそも相手の技術レベルが把握しづらい

前職ではWeb系な人を対象としたキャリアカウンセリング(キャリアコンサルタント)をしてたのですが、経歴、希望を踏まえてお仕事の紹介をするために、相手の技術的なことを把握する必要があったのですが、

  • 「○○の構築は出来ますか?」
  • 「xxの言語は出来ますか?」
  • 「○○の設計経験はありますか?」

というYES/NOの二択になりがちな問いかけは避けてました。

何故かと言うと、双方にとっての出来る・出来ないのレベル感だったり期待値が異なり、こういうのを鵜呑みにしてしまうことで後々互いに不幸になると思ってるからです。 ※これは前々職でのエンジニア時代の自分自身の苦い経験から得た教訓だったりします(^_^;)

YES/NOではなくエピソードを語らせる

ではどうしていたのかというと、仕事でのエピソードを語ってもらうようにしてました。エピソードを語らせるというと何かすごく大げさな印象になりそうですが、質問自体はシンプルで、経歴書の中で気になった箇所とか、個人的な興味とかで、

「○○されていたみたいで、これってxxが大変だったと思うのですがその辺りでどんな苦労されましたか?」 「△△という立場ならではの苦労ってどんなことがあるんでしょうか?」

という感じで質問してました。

ポジションに関係なく、その人の期待値っていうのがあると思うので、そういうのを感じながら仕事をしていれば苦労話はいくつか出ると思ってます。

上記経験があるから、打ち合わせではその仕事ならではのエピソードを語る

自分がフリーランスになって、お客さんとなる方との打ち合わせでは、なるべく相手に響きそうなエピソードを語るようにしています。

「私には特技がない。でも...」女性WEBデザイナーが10年以上フリーランスで活躍してきた秘訣で触れてるようなグレーゾーンの仕事って自分も割りと好きな方だし、これまでのエンジニアとしての経験+前職の人材系の経験を活かす意味でもそういうのは積極的に拾うようにしたい意識もあるので、そういう所が伝わるようなエピソードをなるべく話すようにしてます。

お客さんとなるような方が、比較的規模の小さいベンチャーっぽい所なので、1つのことしか出来ないというよりも、あれもこれも出来る人のほうが重宝されるのかなと思ってます。

自分のエピソードを引き出すためのプロダクト/ポートフォリオ作り

そんな自分ですが、ちょっとしたきっかけで、自分のプロダクトというかポートフォリオというかそんなものを作ってます。

プロダクトとかポートフォリオってなると、何かすごく大変そうな気もしそうですがここ最近仕事で身につけたスキルの習熟度を確認しつつ、自分が好きな商品を集めただけのサイトをRailsで開発(ついでにGitHubで公開)する感じなので、そこまで大したことはやっていません。

過去に関わった仕事を振りる過程を通じて

  • 出来、何がどこまで出来る・出来ないのか自分なりに把握できる
  • 振り返る中で「最近の仕事でやった○○のおかげで、昔はxxで苦労したのも今ならどうってことない」とか「あの仕事の実装は今ならこういう感じでアプローチ出来るんじゃないかな?」という確認や気付きが得られる

ということに繋がってるので、自分のエピソードを引き出すためにプロダクト/ポートフォリオを作っておくのは大事なのかと思ってます

参考までにプロダクト作りを通じて自分を振り返ってみた

上記プロダクトを作りながら、ここ1年弱を振り返ってみるとこんな感じで、40代になった自分としてはそれなりに頑張ってるのかなと。

  • RailsとAngularとの住み分け
    • 管理画面系とかキャンペーン的なサイトはRailsAPI的な役割に徹して実装したら、Rails+Rakeタスク書く人と、フロントエンド側書く人でうまく住み分け出来た。
    • 餅は餅屋じゃないけどJS/CSSの管理はフロントエンド側のエコシステム使った。
  • BDDな開発のやり方にやっと馴染んできた
    • Railsで新規に開発するケースならRSpecでRoutingのスペックを書いて画面遷移の振る舞いをまずは決める。
    • その上でControllerのスペック書いて・・という感じでEveryday Rails - RSpecによるRailsテスト入門で書かれていた外から中へというアプローチについて腹落ちしてる

その際はエンドユーザーがアプリケーションを使ってタスクを完了させる手順を考えてください。これは 外から中へ(outside-in) のテストと呼ばれる一般的なアプローチです。