github.com/shu2232018-05-07フリーランスを再開して2ヶ月のお仕事まとめ実績アメリカでのパートタイム会社員と日本でのフリーランスの2足のわらじを履き始めてから約2ヶ月が経ちました。今月からまた1ヶ月ほど会社員に戻るので、この2ヶ月にやったこと・つくったものをまとめておきます。NFCを使ったゲームアプリをつくりました。ブルーパドル社でのお仕事。何種類かのゲームが遊べるのですが、手前味噌ながらかなり楽しいです。早く公開したいですがもうちょっと先になりそうです。MLを使った写真の自動分類機能とあるIoTスタートアップにて。MLで使えるように変換するところからスタート。精度やパフォーマンスの検証、どういうUXに落とし込むのがいいかの検討を経て、当該企業のiOSアプリのいち機能として実装しました。社内βテストののち、近いうちにリリースされる見込みです。ARKit、Metalを使った機能GraffityというAR落書きSNSアプリ(最近出た2.0ではARビデオ通話アプリに)の開発をお手伝いしました。ARKitをプロダクトとしてがっつりやっている会社というのは(ゲームを除いて)たぶんまだ多くはなく、しかもMetalシェーダを書くという今の興味にがっちりはまるお仕事でした。最近立ち上がったとある会社に技術顧問として関わらせていただいてます。優秀な方々が開発していて、正直なところ技術を顧問できてるかは疑問ですが、年齢的にボードメンバーと開発メンバーのちょうど中間だったりするので、開発陣と経営陣のコミュニケーションの橋渡し役をしたり、色んな現場を見てきたならではの視点からプロダクト全体の方向性について意見を言ったりといったところではお役に立ててるのかなと。立ち上がったばかりのスタートアップで状況は常に動き続けているので、自分がどこで役立てるのか、慎重に見定めて行動していきたい所存です。その他Alexaスキルすごく簡単なものですが、Alexaスキルをつくり、ブルーパドルメンバーで遊んでみたりしました。これ自体はストアで公開するほどのものではないのですが、「音声インターフェースアプリケーションはこんな感じでつくる」というのが掴めてよかったです。ウェブのマークアップブルーパドル社ではマークアップも経験しました。htmlとcssの概念ぐらいはもちろん理解してましたが、gulp、pug、scssというような最近の書き方はまったく知らなかったし、レスポンシブ/スマホ対応というのはそういうことなのねというのを知れたのも良かったです。残念ながらJSまでは時間的に手が回らず。Foundationを使うiPadアプリGitHubの僕のとあるリポジトリを見て、海外の会社より依頼をいただきました。Foundationの最近さわってないAPIが関わるところだったので、自分のローカルコードベースを再整備しておく意味でもこれはやっておきたかったのですが、タイミング的に一番忙しい時期で、「次の休日に1日だけやってみて、間に合いそうならやる」と先方に伝え、1日やってみた感触では保ち時間では到底終わりそうにないためゴメンナサイしました。Fyusion社のお仕事アメリカでの雇い主であるFyusionより、ちょくちょくタスクが来てました。フリーの仕事で手一杯で機能開発までは手が回りませんでしたが、僕が実装した部分について質問に答えたり、日本のクライアント関連の対応をしたり。個人活動はじめて技術書を個人で出版iOS/macOSのGPUインターフェースであるMetalの入門書を書き、「技術書典4」にて販売しました。実績がぼやけている?この2ヶ月、夜も休日も仕事をしていてものすごく忙しかった気がするのですが、こうやって列挙してみると、不思議なもので「もうちょっとできたのでは」という気がしてきます。大小のプロジェクトが順不同で入り混じっているので、工数順に並べ替えてみます。その他(それぞれ1日かそれ未満)左端と右端以外はあまり大差なく、のべ5〜8人日ぐらい。して個々の工数を意識してみると、要は分散してしまってるのだなと。これはなかなか悩ましい問題です。有名なプロダクトをほぼまるっと実装、みたいなの)は、いま仕事の依頼が増えても手が増えるわけでもないので、こだわりすぎるところではないかなと考えています。iOSエンジニアとしてのリハビリ1年半にわたってひとつの会社にフルコミットしてきたのち、ひさびさにフリーランスとして色々な現場に行ってみるとまず気付いたのは、iOSエンジニアとしての総合力が落ちているということでした。Fyusion社では機械学習・3Dプログラミング・GPU制御といった新しいフィールドを開拓できた一方で、そういった技術を利用する機能の開発に関わることにフォーカスしていたためか、UIKitの細かい挙動とか、DBまわりとか、Swiftの最近のデファクト系ライブラリとか、そういう今までは普通にキャッチアップできていたところが疎くなっていて、浦島太郎になったような心持ちでした。専業iOSエンジニアが書いたさまざまな現場のコードに触れ、ひさびさに日々の仕事でSwiftを書き、フルスクラッチでアプリもつくり・・・という中で、だいぶ勘を取り戻せた(キャッチアップできた)実感のある2ヶ月でした。NFCといった新しいフレームワークを実プロダクトで使う機会にも恵まれ、ただただ楽しかったです。心残りは得られた技術ノウハウ3をアウトプットできてない点。NFCとか、ARKitとか、実プロダクトで使ってみてこそ得られる細かい知見がいろいろとありますが、今の所ローカルメモの中で埋もれています。前身ブログ、Qiita、GitHubと、たくさん「技術情報発信」を行ってきましたが、基本的にそれら自体は無収益でした。書籍を書くこともありましたが、フルコミットで2ヶ月とかかかって、印税は「3日受託開発した方が稼げる」ぐらい。自分に学びがあるし、発信した内容からお仕事に繋がることもあるのでここでご飯を食べられる必要はないのですが、問題は、フリーとしての仕事(しかもおもしろい)がたくさんあるとき、それらを断ってまで(=自分の時間を1日n万円で買ってまで)新しい技術を勉強する選択がなかなかできない、というところにありました。そんな折、今回「Metal入門」というニッチな技術書を執筆し、出版社を通すことなく個人で販売してみたところ、なんと簡単に収益が商業本の印税を超えてしまいました。執筆に使った時間をカウントしてみると、のべ9人日ぐらい。この内訳としても、半分ぐらいは本としての体裁を整えるためにRe:Viewと格闘する時間だったり、印刷所を選んだり入稿方法について調べたりする時間だったりしたので、2回目、3回目とやっていくうちにもっと短縮できるはずです。すると、いずれ(下地となるブログ記事等が既にある前提で)技術情報発信の時間単価が受託開発の時間単価に並ぶというのも可能性としては考えられ、これは個人的には非常にエポックメイキングな出来事でした。ブルーパドル社での非常勤メンバーとしての関わりブルーパドル社では毎週「ハッカソン」と称し、なにか簡単なものをつくってそれをベースにいろいろ遊んでみつつブレストする、ということをやってます。これがめっちゃ良くて、自分でアイデアを出す脳みそをまた久々に使うようになったし、家で眠ってるガジェットを掘り起こして触ってみる機会にもなってます。(上述したAlexaスキルはそのうちのひとつ)また僕が普段フリーランスとしてお手伝いしているスタートアップの世界と、ブルーパドル社の主な事業領域である広告の世界、すぐ隣にあるようでまったく別の世界である点もおもしろいです。同じようなプログラミング言語とフレームワークを使っていても、優先するポイントや考え方が違う。それに付随してスピード感とかも違ってくるし、それぞれの業界にいる人達の興味やトレンドも違う。いろんな面でとにかく新鮮で、毎日多くの学びがあります。冒頭に書きましたが、フリーランス活動は一区切りし、5月はひさびさにサンフランシスコに戻ってFyusion社にフルコミットします。6月頭はWWDCで、中旬ぐらいからまたフリーランスを再開する予定です。許可をいただいた会社だけ社名を書いています。自分が関わったプロダクトや機能がまだ出ていない会社については、出たら聞こう、と思ってたのでまだ伏せています。↩ちなみにアメリカで所属しているFyusion社と事業領域がかぶるところがあるといえなくもない(AR)ので、そこらへんはあらかじめあちらのボードメンバーに了承をとりました。4で「Metal入門」という本を販売しますiOS/macOSのGPUインターフェースMetalの入門書を書きました。(22)月別アーカイブリンクWishlist検索はてなブログをはじめよう!shu223さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。