40歳からのキャリアチェンジ

20代はエンジニア・PM、30代はWeb系エンジニア向けのキャリアアドバイザー。40代の今はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連あたり

Matcher経由で就活相談してFAQになりそうなことをまとめた

Matcherというサービスがあるのですが

Matcher(マッチャー)は、社会人の「就活相談にのるので、○○してくれませんか?」というお願いを叶えることで、大学の先輩以外の人にも気軽にOB/OG訪問ができるソーシャルマッチングサービスです。

という感じで、自分と接点が無い人と出会える意味では 昔良く使っていたCoffeeMeetingに通じる所がありそうで、少し前に登録をしてました。

おかげさまでエンジニア希望の2名の学生さんとお会いして就活相談をしました。

Matcherのコメント欄で、こういう補足の情報が登録できたら嬉しかったけどそういう機能がないことに文章を書いてから気づいて折角まとめた情報なので今後申し込みがまたあった場合に、おそらく似たようなことを今後も聞かれる気がしたので、自分の考えをちょっとまとめておこうと思います。

エンジニアとして大事なこと

エンジニアとしての技術スキルを、これから社会人になろうとする人に対して過度に期待は出来ないと思うので私個人的には、以下3つが大事かと思ってます。

  • 相手の話をしっかりと「聴く」
  • 自分自身を「内省するチカラ」がありそうか
  • 抽象化するチカラを持っているか

1つ目ですが、「聞く」ではなく「聴く」の方です。前者は、受け身というか、聞き流す感覚になると思うので、そういう形ではなく、相手がどういう意図を持って話をしてるのかという姿勢で聴くという意味です。(聴くを真剣にやると精神的にはとても大変だったりするので、インタビューがしっかり出来る人は個人的にとても尊敬してます)

2つ目の内省するは小難しいですが、色々な角度からその人のエピソードを聞いて、挫折した経験とかあると、そういう経験から教訓として何を得てるのかという感じで自分自身で振り返るような意識づけをちょっとでも持っていたらエンジニアとしての素養はあるかなと思ってます。 エンジニアの世界観では、「KPT」というのが1つキーワードになるので「KPT エンジニア」とかで、ググッてみてください

3つ目ですが以前まとめた記事で抽象化についてちょっと触れていてそれがヒントになるかなと思ってます。

勉強方法

エンジニアとしてやっていくには常に勉強するのが必要になるのですが、理想的な状態としては

インプット ↓ アウトプット ↓ フィードバック ↓ インプット (以下繰り返し)

というのが常にあるのが望ましいいかなと思ってます。

この形を目指しつ、勉強方法というインプットの手段としては書籍で学ぶ、ネット上の情報を頼りに学ぶ、オンライン・リアルのスクールで学ぶ、etc・・・と色々あると思います。

大事なことしては、読んだだけとか、聞いただけにせず、自分で手を動かす(エンジニア的にはコードを写経するという言い方をしてます)が大事かと思ってます。

インプット以外の所も補足しておきます

アウトプットの手段

アウトプットするためには、理解が曖昧だと、文章書いたり発表したりというのはとても難しいので、理解度を試す意味でとても良いかと思ってます

手段としてはブログを書く、勉強会で自分のノウハウを発表する(LTをするという)、etc・・・というのがあるかと思いますが、アウトプットはある程度の場数を踏むのが大事かと思うので、その人にとって気軽にアウトプット出来る手段を見つけて、継続的に実施していくのが良いのかなと思ってます

フィードバックについて

自分がアウトプットしたことに対して、コメントを貰ったり、アドバイスをもらったりすることで自分と違う視点を得られることで、これまでと違う分野について学んだほうが良いと感じられることが出てきます。

こういうフィードバックというのはとても大事で、特に最近のエンジニア界隈では、コードレビューという他人が書いたプログラムのソースコードを読んで、それについて疑問点とか改善点をフィードバックして、それをベースに必要に応じてソースコードを書き換える習慣を仕事の仕組みとして上手に取り入れてる会社・チームはレベルの高い人が集まってる印象を個人的に思ってます。

これから社会人になるような人にとって完全には理解できないかもしれませんが、Wantedlyに勤めてるエンジニアの方がQiitaでとても良いことを書いてるので紹介しておきます

その他おまけ

Matherで就活相談の対応をする時に、プランというのを作るのですが、差し障りの無さそうな美味しい珈琲を教えてと書いたら、ある人はわざわざ豆を買ってきてくれた。しかも私が豆を挽く器具を持ってないかもしれないと思って、挽いた状態の方をチョイスするという細かい気遣いをしれくれていて、そういうのが自然にできるのは凄いなぁー

f:id:h5y1m141:20160317075035j:plain

実は最初このエントリ書いてる時にMatcher通じてエンジニア希望の人の就活相談をしたので今後聞かれそうなことをまとめましたというタイトルにしていたのですが、記事タイトルは32文字以内に収めるのがSEO的には良いらしいということを最近しって、今自分が作ってるプロダクトの↓機能を実装してるのでそっち使って試行錯誤してこのタイトルに落ち着きました

f:id:h5y1m141:20160317074615p:plain

なぜポジションレスな働き方が求められてるのかをテーマにしたキャリアトークイベントをやりました

なぜポジションレスな働き方が求められてるのか?というテーマで昨日キャリアトークイベントを1年半振りにやりました。

しばらくやらなかった理由として

収支的に赤字にならないようなイベントでない限り、当面活動ストップしようかなと思ってます。

スタートアップのWebエンジニアとチームの文化の作り方考えませんか?というテーマでトークイベント実施しましたより

ということを1年以上前に書いて、実際今回もイベント単体の収益だけを見ると、まぁちょっと赤字^^; になってしまってるのですが、

  • 受託ではない自分の仕事を作るための営業機会
  • 年間での収支考えるとここでの持ち出しは実はそんなに大きな影響がない

を考えると、トータルで見て損なことではないかなということがわかってきたので今回実施しました。

簡単に昨日のイベントを振り返る

昨日のイベントの内容はもう@azumi0812さんに描いてもらったこの↓グラフィックレコーディングを見てもらうと、おおよその内容が伝わるかなと思うので、ひとまず貼っておきます。

f:id:h5y1m141:20160311080339j:plain

グラフィックレコーディングしてくれた@azumi0812さん自身も、今回のテーマにとても興味持ってくれていたみたいで、その場での対話を可視化してくれながら、適宜対話に参加してくれたので、可視化されたものを見つつまた違った対話が産まれ、それがまた可視化されて・・・というのは、とっても新鮮な場だったので、今回企画して良かったなぁと思ってます。

イベント開始前から本編までの雰囲気

参加される人が仕事帰りで予定通りに来れるかどうかわからない+その場の雰囲気を温めるということを狙って、いつも通り、最初に会場に来た人を順番に交えながら交流会→本編のトークイベント→任意でまた懇親会という流れで行いました。

最初の交流タイム

f:id:h5y1m141:20160311105825j:plain

f:id:h5y1m141:20160311105834j:plain

f:id:h5y1m141:20160311105841j:plain

f:id:h5y1m141:20160311105850j:plain

本編のトークイベント

f:id:h5y1m141:20160311105902j:plain

f:id:h5y1m141:20160311105909j:plain

f:id:h5y1m141:20160311105953j:plain

振り返りで何も書かないと手抜きっぽいので「評価」というテーマでちょっとだけ深掘り

従来の役割に固執しない働き方をしてる人をどう評価するのかが気になっていたテーマだったのでそこについてちょっと触れておこうと思います。

あるレベルになってくると、客観的な評価は無理。

すべての状況に当てはまらないと思うのですが、少なくとも新しい領域にチャレンジしてる事業・会社の中で仕事をしてると、数値化して、みんなにとって納得の行くような客観的な評価を作るのが難しいのかなというのが、登壇した2人+参加していた人との対話で気付かされました。

互いの信頼関係が構築できてるのが重要

客観的な評価は無理だから、「えいや」で評価を決めざるを得ないという状況だと、互いの信頼関係が構築できてるのがとても大事というような話が出ました。

この話を聞いた時にふと、Googleについてのこの記事のことが頭をよぎりました

社員一人ひとりが会社で本来の自分を曝け出すことができること、そして、それを受け入れるための「心理的安全性」、つまり他者への心遣いや共感、理解力を醸成することが、間接的にではあるが、チームの生産性を高めることにつながる。

グーグルが突きとめた!社員の「生産性」を高める唯一の方法はこうだプロジェクト・アリストテレスの全貌より

評価をする上で、他者への心遣いや共感、理解力を醸成できていれば、その空気が相手に伝わり、そういう人が所属するチームに入れば、「えいや」で決まる評価であっても互いに納得感がある形になるのかなと気付かされた感じがします。

イベント告知文で触れたNBAのウォリアーズの凄さ

今回のイベントの告知文で、アメリカのプロバスケットボールリーグのNBAに所属してるウォリアーズというチームの話をこんな感じ↓で書いてました。

f:id:h5y1m141:20160311110124p:plain

ウォリアーズは昨季優勝してある種の目標を達成してしまってモチベーションを保ちづらそうな上に

  • ヘッドコーチが腰の手術を受けた影響で、開幕から不在
  • ヘッドコーチ不在の間、NBAコーチになってわずか2年目のアシスタントコーチが引き継いでいる

という状況みたいなのですが、現在どうなってるのかというと、【NBA】まだ6敗のウォリアーズ。ブルズ超えの史上最高勝率なるかという凄い状況になってるみたいで、しかも

そして、みんな役割を受け入れてる。NBAはビジネスです。評価はあくまで個人。それなのにそこを度外視してチームとしてまとまってます。

NBAのウォリアーズが、あんなに強い理由が

というのを考えると、ウォリアーズというチームが醸し出してる空気ってどんなものなのか、個人的にとても興味が湧いてきて、NBAとは言わないので、バスケットボールのヘッドコーチやサッカーの監督とかが普段どんなことを考えてるのかをうかがい知る機会とかを作れたらいいなぁと思っているので、遠い先のことかもしれないけど、いつか実現したいなぁとちょっと妄想してます^^;

これまでと違ったステージに進めそうな感触をつかめた

2年半ほどまえに第一回目をやったのですが、その時からずっとどうせやるなら、みんなにとってWin-Win-Winになるようにするということを心がけてて、これまでもその場にいた人達の表情だったり交流具合などを見てて

  • 登壇してもらった人
  • 参加した人

が満足いただけてるのかなと思っていました。

今回はグラフィックレコーディングをその場にいた人達が体験できて、トークイベントとしてもこれまでと違ったスタイルの体験が生み出せたのかなと思ってます。

また、グラフィックレコーディングをしれくれたご本人も、対話終わったあともだれかの対話を新たに生み出せてるということを実感されていたようで、ご本人の言葉を借りると

グラフィックレコーダー冥利につきる

ということを書かれていて、みんなにとってのWin-Win-Winというものが、これまでよりも、ちょっとアップした形のトークイベントに出来つつある手応えを得た夜だったかなと思います

最後になりましたが、毎回会場利用させてもらってるCo-Edo&登壇いただいた小林さん&高柳さん&グラフィックレコーディングしてくださった@azumi0812さんありがとうございました〜

これからのエンジニアの働き方についてのトークイベントに登壇してきました

株式会社ホットスタートアップの橋田さんからお声がけしてもらって、【エンジニアミートアップ!】多様性時代、これからのエンジニアの働き方とは?というトークイベントに登壇してきました。

そういえばちょうど1年前にも、やはり橋田さんから声をかけてもらって参加してましたね^^

当日のおおまかな流れ

リモートワークマガジンの方が当日取材に来られていて、後日詳しいイベントレポートがそちらにあがるかと思うのですが、自分が印象に残った範囲で簡単にイベントの振り返りをしておこうと思います。

開場。いきなり懇親会

これは自分がやっていたトークイベントでも使っていた流れなのですが、開場してまもなく簡単な交流会が始まりました。

これは会場全体の場の雰囲気を和らげることができるし、イベントが始まるまでの、独特の微妙な「間」を多少はなくすことが出来ると思うので、参加者視点で見ててもこのスタイルは結構気に入ってるので、他のトークイベントとかでも積極的にみんな取り入れてほしいかなと思ってます

予定してるトークテーマについて投票してもらう

f:id:h5y1m141:20160130093109j:plain

パネルディスカッションで取り上げてもらいたいトークテーマーを参加者に投票してもらい、それについて実際にパネルディスカッションで取り上げるという形で運営してました。

参加する人達が聞きたいであろうテーマについて話をしたほうがより有意義なイベントになるだろうからそういう意味でもこういう事前に投票してもらうスタイルも結構好みだったりします

七島さんの講演

パネルディスカッションの前に最初にRepro株式会社の七島さんの講演がありました。

七島さんの面白そうなことに首を突っ込むというスタンスで働いてるとか、OSSにお世話になりっぱなしだから今後は何か貢献していきたい・・・等のお話は聴いててとても共感でき、何より楽しそうにお話されてるのがとても印象に残りました

パネルディスカッション

  • どうしてフリーランスになったの?
  • 仕事はどうやってとってきてる?
  • フリーランスを辞めたくなることってある?それはどんなとき?

あたりのテーマでパネルディスカッションをしました。

モデレーターの橋田さんとしては、働き方に色々な選択肢があってもいいのではというのが根底にあってそれを踏まえて、各人に話題を振っていったのかなというのが、パネラーとして話をしていた自分の印象です。

ちなみに、自分のそれぞれの回答はというと、基本的に過去ブログに書いていたりするので、最後の辞めたくなったことがあるかという点について触れておくと、基本的にそういう気持ちというのは今のところ無かったりします。

イベントでもちょっと触れたのですが、一昨年の年末に仕事がなくなった時期があって、そういう時は不安になったというのは事実あるのですが、かといって辞めたくなることまでは今のところ至ってなかったりします。

自分の場合には、フリーランスになるのが目的ではなく収益源を分散させて生きていたいというのがあり、それを実現しやすいのがたまたまフリーランスで今のように週2,3日の仕事をかけもちするというスタイルだったりします。

パラフトのようなサイトにある求人なら、従来の正社員求人とはちょっと毛色がことなるような条件のものがあったりするので、そういう働き方が、選択肢として今後増えてくることがあったら、そういうのを軸にしつつ、副業的に別の仕事をかけもち・・みたいなことも視野に入るのかもしれませんが、少なくとも現時点で自分にとっては最適ではないのかなと思ってます

イベント参加後に改めておもった一次情報に触れることの大事さ

実はこれが一番書きたかったことなのですが、こういうトークイベントを通じて、パネラーの方だけではなく、参加者自身も含めた一次情報、つまりは、個々の人の直接の経験談とか考えに直接触れることが出来るのは大事だなと改めて思いました。

トークイベント後の懇親会で、参加された方数名の話を聞いてのたですが、色々な考えだったり悩みというのがあるなぁというのが印象に残りました。

他の人がどういう働き方・考えをもってるのかをうかがい知る機会はそう多くは無いと思っていて、自分でもWeb系な人のキャリアカフェというトークイベントを過去実施しましたが、イベント前後の懇親会を通じて、参加者同士で自分の境遇を語ったり、情報交換することで色々な気付きがあると思ってます。

イベントレポート等で当日話された内容は知ることが出来ると思うのですが、一次情報に触れながら、自分の考えをあれこれ巡らせることが出来る機会を得るという意味でトークイベントのような場、特に懇親会などで多様な考えに触れるのは大事なので、今年はもうちょっと自分自身でイベントを企画・運営する割合を増やしていきたいと改めて実感した一日でした。

最後になりましたが、主催のmofmof inc.の原田さん、ならびに、株式会社ホットスタートアップの橋田さん+運営お手伝いのインターン生のみなさん、お疲れ様でした!

フリーランスになって1年3ヶ月経過したので振り返り

1年経過した振り返りからあっという間に3ヶ月経過してました。

上記エントリでここ最近やってることについて触れてましたが、1つ終了して、Rails4でスマフォアプリのバックエンドのWebAPIの開発の方が色々と頼まれる領域が増えたのでそちらを週3日行ってます。

残りの2日はというと別の所でこちらは完全に常駐してというスタイルで手伝っています。

ひたすら作る仕事と熟考してから作る仕事

少し前にこんな↓ことを書いた通り、縁あってWebメディア系での開発の仕事をしてます

ファッションxメディアのスマフォとWebアプリみたいな所で、バックエンド全般+管理画面のフロント全部という感じで開発 ECxメディアで割りと有名(少なくともうちの家族の中では)な会社さんで開発 ECxメディアの領域固有の技術要素を考えてみた

技術的には両方共にRailsを使っているのですが

  • 前者はこれまでにないようなことに事業にチャレンジしてる状況でそのための手段となるものが色々と必要なのでひたすら作ってる
  • 後者は熟考してから作ってる

という感じで脳みその使い方が全然違う感じがしてます。

変な例えですが、サッカーの代表選手が、所属クラブでのパフォーマンスをうまく発揮できないみたいな言われ方されるケースがあるんですが、異なるスタイル・戦い方を突然やれって言われてもすぐには出来ないみたいな状況と同じなのかなとなんとなく思ってます。※でもようやくこの状況に慣れてきた

良かったこと・反省点

ECxメディアさんの所の仕事は割りと早い段階で決めていたのは良かった反面、前回での反省点同様にやりたいことに着手できてない状況は変わってないですね・・

とはいえ、今やってる仕事で得てる知見は割りと自分がやりたいと思っていることと関連があるので、前回の反省点からは多少改善はされてるのかなと思ってます。

ここ最近着手してること

画像解析+機械学習みたいな領域のことをやっててるので

みたいな所にチャレンジしてます。

あとは、NAVER まとめの管理機能(こういう↓感じのやつ)と似たような感じの、自社サイトで扱う記事管理機能をRails+Angularで実装してます。

NAVERまとめ管理機能のキャプチャ

f:id:h5y1m141:20151030204229p:plain

実際にはNAVERまとめのこの項目よりも多い&複雑な仕様(例:記事中で任意の箇所でページ区切りができるようにしたいとか、タイトルは基本テキストだけど、任意で独自につくったタイトル画像も指定できる)だったのでModelの定義で色々悩んで作るの決行大変だった・・

ちなみに、作ってる中でRailsのFat Controller/Modelというのがどういうことなのかようやくわかってきて、色々と解決方法を探って最近ポチった Fearless Refactoring: Rails controllersは約$50でしたが、今の自分にとって求めてる情報が決行あったので、買って正解でした

次の3ヶ月に向けて

  • ここ3ヶ月で得た知見が結構あるから、もう少しQiitaに技術情報まとめたい
  • 中長期的なことを考えて、Web系にシフトしたい人(未経験な人も含む)の支援をしたいから、弟子になってもいいっていう人をどうにかして見つけたい

40歳を超えてエンジニアの仕事ができてるワケ

エンジニア35歳定年説からすると、現在42歳なのでその年齢は超えており、しかも前職は人材系の仕事をしていたので、エンジニアの仕事は8年ほどブランクがあるという状況の中でエンジニアな仕事で日々の売上を立てることが出来てます。

※といっても趣味&実益兼ねてここ数年はほぼ毎日コード書いてましたけどね^^;

なんでそんなことが出来るのかなとちょっと振り返ると1つのキーワードにいきつきそうなのでそこについて触れていこうと思います。

そのキーワードは抽象化するスキル

エンジニアとしての仕事をする上で色々なスキルが問われそうですが、個人的には抽象化のスキルが欠かせないかなと思っていたりします。

たまたま図書館で借りて読んだHarvard Business Reviewの2015年7月号でこんなことが書かれてました。

抽象化とは複雑な事象から類似を見つけること 〜中略〜 高次元で考えることによって、何が生まれるのでしょうか。

物事を抽象化してとらえ直すことです。それが人類にとって極めて重要なんです。 抽象化とは複雑な事象から類似を見つけるということです。類似を見つけるにはいい頃合いのレベルまで抽象化しなくちゃいけない。

この内容に関連するようなIT関連の記事が無いかなぁーと思ってちょっとググったらプログラミングの「抽象化」ってどういう意味で、なぜ必要なのかみたいな所で抽象化というキーワードが出てるので、抽象化が大事そうというのはあながち間違ってなさそうな気がします。

どうやって抽象化のスキルを身に着けたのか

エンジニア以外の仕事をここ数年はずっとやっていた状況の中で、結果的にですがどのようにして抽象化のスキルを身に着けたのかというと、インプットの量を増やす過程を通じて抽象化のスキルが身についたのかなと思ってます。

インプットのジャンルに偏りがなかったことで、物事を抽象化してとらえ直すという習慣が身についたような気がしますが、具体的にどういうインプットがあったのかちょっと振り返っていきます

前職でのキャリアカウンセリングの仕事

キャリアカウンセリングとは

キャリアカウンセリングとは、その個人にとって望ましい職業選択やキャリア開発を支援するプロセスのことです。 単に個人と職業のマッチングを考え、仕事を見つけるお手伝いをするだけではありません。人生で遭遇する様々な経験を積極的に受け止め、その人にとってより幸せな人生を描く成長の糧とするための支援です。

キャリアカウンセリングとは

ということらしいのですが、まぁ、確かにそうでしたね。

自分が心がけていたのも相手のおかれてる状況を踏まえて、その人が次の一歩を踏み出すお手伝いをするというスタンスで対応してました。

具体的には

  • その人が保有してるITスキルについて客観的に把握する
  • その人が抱えてる悩みとか課題を何故持つようになったのかその要因(例えばですがキャリアアップしたいっていう悩みにある根底がそもそも何なのか。)を話しの中から探る

という意識を持って少なくとも1500名くらいのキャリアカウンセリングをしてきました。

その経験を通じて、会社や立場や仕事内容が違っていても、同じような悩みとか課題を持つケースがあるのかなと考えるようになり、複雑な事象から類似を見つけるという抽象化そのものをずっとやっていた気がします。

そういう経験から似たような境遇の人同士が集まって互いに交流したほうが良さそうだし、そういう場をつくることで当時の本業にもプラスになることもあるかと思ってWeb系な人のキャリアカフェというトークイベントの企画運営に至ってたりします。

一時期本を読みまくった

インプットの量という意味ではこれも欠かせない要素かなと思ってます。

2005年に畑違いの人材系の仕事にシフトしたのですが、いろいろな人と接する上で、これまでと全く縁がない領域について知っておいたほうが良いと思って、1年に100冊本を読むというのを目標にしていました。

7月、8月に読んだ本を見ると、本当に色々なジャンルの本を読んでて最終的に目標は達成してるので我ながら良くやったなぁと思います

一見すると全然関連性がないような本同士でも、根底で通じるような概念みたいなものが見えてきてからは、本を読むペースが上がってきた気がしますが、これなんか、まさに物事を抽象化してとらえるということの一例かと思います。

最後に

自分としては30代で得たスキルとして抽象化というのがポイントになって40代の今を過ごしていますが、同世代の人が、30代をどう過ごして今に至ってるのかというのがちょっと聴いてみたくなり、今お手伝いをしてる仕事の区切りがつく頃合いを見計らって、以前やっていたようなトークイベントをやる上でのきっかけ作りにするためにちょっとまとめてみました。

仕事の区切りがつくかどうかはちょっと見えないけど、なるべく早い時期に実現したいと思ってます。

Railsのスキルの世界観

ここ1年ほど色々な現場のお仕事をさせてもらったおかげで、Railsについてのスキルレベルの指標が見えてきた気がします。

Railsを使いこなせると自信を持っていえるほどのレベルにはまだまだ達してないですが、Railsのスキルについての世界観についてちょっとまとめてみようと思います

前提としての自分のWebベースのシステム開発で問われそうなスキル

以下でまとめますが、Rails/Rubyというのは、フリーランスになってから初めてだったりします。

ただ、技術の技術(ネットワークのTCP/IPとか)はまぁそれなりに頑張っていたから、その知識とか経験(BtoBとはいえあの規模のインフラ環境の経験はほんと貴重だった)は今でも十分活用出来てるかと思ってます。

インフラに関する領域

  • WindowsのActiveDirecotryという企業向けのものだけどそっちの経験がベースである
    • クライアント数が数万台あるような環境で端末の構成・維持管理を数名のチームでやっていた
    • 独自に内製化したツール+αで、ネットワーク対応がお世辞にも良いとはいえないWindowsを相手に頑張っていた。
      • 単純比較にならないけどMac+Boxenの環境っぽいのを自分たちで作り上げていた
    • ADのサーバーを見るチームも別にいるし、ネットワーク担当も、LAN(っていっても/24のセグメントがいくつもある)とWANとでチームが作れる程度の規模

開発に関連する領域

  • プログラミング
    • 前述した端末の構成・維持管理でWindows上でWSH/VBScriptベースで色々作っていた。
    • 前職はエンジニアじゃなかったけど、自分の業務効率化のためにWindows+WSH+JScriptという制約のある中で頑張って色々つくっていた。
      • 仕事柄データ集計とかをやる頻度が多かったのでミックさんの達人に学ぶ SQL徹底指南書とかを読んでSQLを割りと書くことはあった。
      • 趣味でスマフォアプリ+WebアプリをJavaScriptな技術(Titanium+Node.js+α)で全部作っていた
      • Rubyは趣味ベースでSinatraベースものを割りと書いていた

マインド的な所

  • インフラ寄りの経験が多い
  • エンジニアの仕事をする前後では元々サービス業の経験が多かった

というのが下地にあるからか、既存のシステムの改修とか保守みたいなみんなが好まないような仕事はそんなに嫌ではないです。

あと、前職で色々な経験・立場の人との対話をだいぶしたおかげで、モノゴトを抽象化して、互いの共通言語となるものを見つけるのは苦ではなくって、その辺りの特徴を活かしてお仕事をいただくように心がけてます

1年ほど前に見ていた世界観

上記触れたように、Railsは仕事で書いたことがありませんでした。

SinatraベースでWebアプリ書いていて、Scaffoldで雛形となるものを作ってみたいなことはかろうじて出来たにせよ

  • (当時は)メジャーなgemってよく知らなかった
  • 1対多な関係の構造をRailsでどのようにして扱っていいのかイマイチわかってなかった
  • Ruby自体もそんなに書けているわけではなかったので配列とかハッシュ操作とか全然スマートではなかった

という感じだった気がしてます。

ちなみにその状態でやった最初の仕事

我ながらよく頑張ったと思うけどこんなのを最初の半年ほどやってました。

  • Rails4の仕事
    • フロント側はAngularJSを使い始めていた
    • RackサーバーにPumaが利用されていた
  • 自分が入った段階ですでに担当者はx代目
    • 引き継ぎとかそういうのはない
    • 運用に関するドキュメントも基本無し。

その後に見えてきた世界観

上記経験した後ですが、色々縁があっていくつかの現場を経験したことで当初見えていた世界とまた違う世界が見えてきました

この時に自分なりに出来た(わかった)と思えたこととして

  • 開発するシステムは異なれど、Railsの開発でみんながよく使うgemがあることに気づく
  • Railsのレールにうまくのった開発をしていると、推測がきくから開発が楽になる反面、そこから外れると、凄く大変っていうのがよくわかってきた

という部分かなと思ってます。

一方でGitを単純に作業記録の延長線でつかっていたから、GitHubの有り難みがよくわからなかったというのが正直な所です

今年の春先頃に見えた次の世界観

よく使うgemがどんなものかわかってきたことで

  • xxxは以前つかったことあるからそれ使った機能ならだいたいxx日程度で実装できそう
  • 独自実装してるこの箇所は以前経験したxxxみたいなアプローチでいけそうというカンが効く
  • 今取り掛かりつつあるこの実装はなんとなく気持ち悪いからリファクタリングが必要かもというのが自然に湧くようになった
  • RSpecをどこまで書く・書かないという自分なりの判断基準がちょっと出来つつあった
  • GitHubの便利さを実感した
    • 基本リモートでプログラミングを教える仕事をしていたのですが、GitHubがあったおかげでそれが出来たのかな

という感覚をもてるようになりまいた。

それもこれも年始からGW頃までお世話になった受託開発+自社サービスをやってる会社さんの経験かなと思ってます。

次のステップに向けて自分が感じてる課題

ここまで長々と書いてきたのは、今後に向けて自分の課題というのがよくわかっていててめえらのRailsはオブジェクト指向じゃねえ!まずはCallbackクラス、Validatorクラスを活用しろ!みたいな話がまさに課題として出てて、ちょっと気分転換(というか現実逃避^^;)したくなったからだったりします。

負債の話はよく出ると思うのですが、今自分がやってる仕事に関して言うと、自社サービスの開発のお手伝いをしてて、

最近悶々としてることとか考えてることをいくつか書き出しておくと

  • 構造上、どうしてもネストが深くなるオブジェクトをどう扱うか?
  • 複数のContollerやModelで共通利用するような所はうまくConcernsを利用できるようになってきたけど、別のやり方があったのかもしれない
  • ずっと探していてようやく見つけたメタプログラミングRubyで書かれてる内容が肌感覚でわかってきたf:id:h5y1m141:20150821144627j:plain
    • そのおかげかわからないけど、他人が書いたgemとかを読む上で苦手意識が大分減った

という感じです。今見てる世界観が、数ヶ月後(もしかしたら数年後とかかも・・・)に変わっていたらまた頑張ってまとめようと思います

フリーランスになって意識してきた仕事獲得術

ちょっと釣りっぽいタイトルですがここ1年ほど、自分なりにやってみたフリーランスの案件獲得術みたいなところを振りかえります。

利用する手段

フリーランス向けの案件に限定しないかもしれませんが以下3つに大別できそうな気がします。

  • 個人的な人脈
  • 人材系のエージェント会社みたいな所
  • Web系の媒体

実際この1年の間でこの3つ全てを利用して案件獲得してきたのでそれぞれについて掘り下げてみます

個人的な人脈

会社を退職して年休消化中に書いたエントリ

  • 知り合いのオフィスに訪問
  • 個人事業主の開業届けを出す
  • 元々水面下で決めていたJavaScriptiPhoneアプリ開発をマスターしよう!の講座以外に、以前からの知り合いから、思いがけない提案をいただき、8月から自分のこれまでの経験がフルに活かせそうな講座+αな仕事の打ち合わせ

ということを書いていたように、最初の仕事は結果的に全部、自分の人脈での仕事でした。

その後も、会社員時代にトークイベントで何度か利用させてもらっていたコワーキングスペースCo-Edo経由で、お仕事を紹介してもらったり、少し前に常駐していた所の人のつながりで、現在の仕事を紹介してもらったり・・という感じで人脈経由でのお仕事紹介が結果的には多くなってます。

間に人・会社が入らず直接やりとりするので、売上の観点でもですが、相手の信頼をどうにかして得るようにそれぞれの仕事をこなすことで中長期的なお付き合いになるかと思うので、そういう部分は良い点。

一方で、中長期的なこととか考えると、どうしても義理人情みたいなことが頭をよぎるので、単価の面であまりドライな対応をやりづらい側面もあるかなと思ってます。

人材系のエージェント会社みたいな所

これはフリーランスになる少し前から面識があったシェアゼロさんの中川さんが行ってるPROsheetさんと、もう1つ登録はしてあります。

元々自分はそっち側の仕事をしていたから

  • 世の中のWeb系のエンジニア向けの仕事の相場観
  • 人材系のサービスを行う上での案件獲得〜その後のフォローみたいな所にかかる工数 とか、その対価としての仲介料的なものの相場観

とかはそれなりに持ってます。

一般的に、こういう仲介する会社の仲介料的なものをすごく持っていかれるイメージがありそうですが、そういう仲介をする会社は、実際のお客さんとなる会社との取引を安定して行うための営業活動をしてます。 状況によっては、お客さんの多少の無理難題を引き受けて、営業工数とか考えると、全然割にあわないことも結構あったりするのかなと想像すると、それぞれの会社の仲介料は割りと妥当な金額になってるのかなと思ってます。

個人が持つ人脈には限界があるので、1,2つは登録はしておいても損はないかと思います。

ただし、ずっとそういう会社経由での紹介に頼ってしまうと、自分のお財布のヒモを握られてしまう感じもするので、その点は意識しておいてもいいのかと思ってます。

Web系の媒体

自分は、Wantedlyをちょいちょいチェックしてるのですが、業務委託契約とかの求人もそれなりに出てます。

Wantedlyの特性もあると思うのですが、気軽に会えるような雰囲気があるので、まずは、応募して話だけでも聞いてみたいということが出きるのがとても良いかなと思ってます。

  • 実際に会って互いの相性みたいなものを感じた上で、実際の仕事につながりそうかの条件の話が出来る
  • 互いの利害が一致しそうと思えるような求人なら、例え正社員前提の案件であったとしても話を聞きに行きたいボタンをポチって実際に会えた&仕事獲得出来た

ということを経験してるのでWantedlyは自分にはフィットしてます。

あえて欠点みたいなことを書くと、プロフィールを充実させておかないといけない点かと思います。

プロフィールに書ける実績を積んでおかないとそもそも書くことがないわけだし、プロフィール入力は割りと手間がかかるのでそういう時間をしっかり作らないといけないのは人によっては向かないケースもあるかなと思います。

売上単価みたいな話

流石に具体的な金額は書けないですが、売上単価みたいな話についてちょっと触れておこうと思います。

損して得を取れみたいな所が、特に人脈経由の場合に大きく出てしまう傾向があったのと、フリーになって初めの頃は、自分の実績という部分であまり自信がもてない面があったので、単価設定がだいぶ低めでした。

でも自分のアウトプットに対して、正当な対価というのを意識して、請求するような意識をしっかり持ってないとダメかなというのを昨年末にちょっと気づかされたのと、やっぱり自分のパフォーマンスに対する対価という考えでいけば、安い金額というのは、自分がその程度の仕事しか出来ないと認めることにつながりそうなので、単価設定というのは過度に安いのは辞めようと決心しました。

単価を上げすぎてしまうと、相手の期待値も上がってしまうので、相手にとってお得感を演出しつつ、自分としてもそこそこ満足の行く生活を送れるラインでの条件設定(金額x労働条件)を現在模索中してます^^;

相手を見極める能力は要らない

少し前にトークイベントで登壇してもらった堤さんに、「相手を見極めるようなことってどんなことされてますか?」ってたしか質問したことがあります。堤さん曰く、その案件の話を持ってきた当事者を見抜くのは難しいけど、その案件に関わる人にどんな人がいて、どれだけの人が巻き込めているのかを大事にしてるというようなことを言っていたように記憶してます。

最近はそれをすごく実感してて、結局のところ、人が巻き込めているというのは、その人自身が色々な人から信頼されてる証拠だし、信頼は、長い期間をかけて得られるものだから、そういうものを持ってる人の仕事というのは、悪くはないと思ってます。

今後について

個人的な考えですが、なるべく人脈を通じた案件獲得を伸ばしていきたいと思ってます。

残りがダメとかということはないのですが、

  • やはり間に会社が入ればその分だけ自分の売上が減る
  • (中川さんの所を除くと)人材系のサービスは今の所長い付き合いを互いにしてないので双方にとってのメリットが見出しづらい(つまりはその場限りの関係性になる可能性が高い)

というのがその理由かと。

これまででお仕事などを通じて縁が出来た人からの紹介を大事にして、そういう人が困っていそうなこと(主に人材獲得みたいな話)で自分が何か役に立てそうなことがないか常に考えて行動しておくことで中長期的な関係に持っていければというのが今後の狙いです。