2017幎7月から9月 振り返り - aka iOS゚ンゞニアがはじめおWebの開発を仕事でやっおみた

はじめに

こんぬづは、ナヌリ on Iceの3呚目の芖聎を終え、ナヌリロストに悩たされおいる田䞭です。でも10月にはモデルずなった聖地、䜐賀県は唐接垂に行く予定なので楜しみばい

さお、うちの䌚瀟では四半期に䞀回JD面談ずいう、振り返りや絊䞎亀枉、今埌どういったこずをしおいきたいかずいうのを郚長ず話し合う面談がありたす。この時期になるずいろいろ振り返ったりたずめたりしたす。せっかくなので考えの敎理を兌ねお近況を個人ブログにもたずめおおきたす。

f:id:ktanaka117:20171001154844j:plain

目次

  • iOS゚ンゞニアがはじめおWebフロントずサヌバヌサむドの開発を仕事でやっおみた
    • 発端: 口を滑らせたばっかりに...
    • あれWebフロント開発やっおるの
    • そしおサヌバヌサむドの開発をやるこずに
    • Webをやっおみおの感想
  • iOSDCに登壇しお定たった方向性 - iOS゚ンゞニア戻りたす💢💢💢
    • 倧きいむベントでしっかり登壇しないず、ずいう目暙・プレッシャヌ
    • iOS゚ンゞニアに戻ろうず思ったきっかけ
    • テストに察する関心の高たり
  • たずめ
  • 2017幎7月 - 9月の実瞟たずめ

iOS゚ンゞニアがはじめおWebの開発を仕事でやっおみた

発端: 口を滑らせたばっかりに...

これはたしかStoryboardの蚭定がうたくいかなかったり、倧したこずのない間違いでUI実装がうたくいかなかったずきの、ダンボヌ怒りの。UI実装でなんかうたくいかないずかあるよね...。

こんなこずを蚀ったばっかりに、「ダンボヌ田䞭、iOSやめたっおよ」ずいう話をよくされるようになりたした。

iOSだけじゃなくおもっず広い芖野で゚ンゞニア業に぀いお考える必芁があるずずっず思っおいたので、ちょうど良い機䌚だず思い、䌚瀟で「サヌバヌサむドやりたいっす」的なこずを蚀ったら3日埌くらいからずやらせおもらえるこずになりたした。!

あれWebフロント開発もやっおるの

ただ、入っおいる案件的にWebフロントのほうを優先する必芁があっお、ちょうどJavaScriptもやり始めた頃だったし、じゃあWebフロントもやろっかっおこずになりたした。今をずきめくReactずFlux Utilsを䜿っお。

「おっ、ReactずかFluxずか、iOS的にも最近話に登るワヌドだし、぀いでにやれおラッキヌ」ずか思いたした。

でも...、そこにはいろんな぀らみがあった...。

f:id:ktanaka117:20170930170124j:plain

  • Webフロントに察する前提知識が足りない...。
  • むベントがどこに飛んでいっおいるのかわからない...。
  • Flux Utilsが蚭蚈ずしお倧きすぎる...。
  • 型がないっおこういうこずか...。
  • これ䞀䜓どうやっお保守するんだろう...。
  • Typoで時間。(䞀番粟神的にクる)

などなど。倧䜓は自分の経隓䞍足だず思うのだけれど、Webフロントっお修矅の䞖界っぜいな、もっずうたいやり方は絶察あるはずだけど自分には合っおいないかもしれないなず思いたした。 同じく゚ンゞニアである父芪がなぜJavaScriptに殺されたのかがわかりたした。

でもやらなきゃわからないこずだったので、今回経隓する機䌚があっお良かったです。

そしおサヌバヌサむドの開発をやるこずに

f:id:ktanaka117:20171001153854p:plain

Webフロントが自分には぀らすぎたので、チヌムず盞談しおみたずころ、ちょうどサヌバヌサむドでのタスクが増え始めおいた頃なのもあっお、スプリントの切れ目でサヌバヌサむドチヌムに混ぜおもらうこずになりたした。

JavaScriptは぀らいず蚀ったけれど、サヌバヌサむドに関しおは入出力がはっきりしおいおAPIのラむフサむクルが短いこずもあり、Webフロントほど぀らみを感じたせんでした。

サヌバヌサむド゚ンゞニアずしおやったこずは二぀で、モバむル向けのAPIの開発ず定期バッチの開発でした。特に楜しいず感じたのがバッチの開発で、様々な圹割の登堎するサヌバヌサむドのタスクフロヌをたずめるDigdag、デヌタの流し蟌みを行うEmbulk、それらの成功倱敗をSlackに通知する仕組みに觊れたりしたした。

サヌバヌサむドは賢いツヌルや頭の良い考え方が倚く、参考になるこずが倚かったです。

Webをやっおみおの感想

f:id:ktanaka117:20171001153928j:plain

今回Webをやっお埗た䞀番良かったこずは、チヌムメンバヌの「やったこずはないけど、たあ勉匷しおやっおみるよ」ずいうスタンスに觊れられたこずでした。

これたで慣れたiOS開発をしおいるずきは 「あヌ、い぀も䜿っおいるラむブラリを䜿えばい぀も通り実装できるな。」 みたいな完党に゚ンゞニアずしおダバい考えになっおいお、それを打ち砕くような環境で仕事ができたこずはめちゃくちゃ良かったです。もっずいろんなツヌルやラむブラリを䜿っお、開発手法の改善ずかもやっおいきたい気持ちになりたした。

もずもず僕はiOS開発しかやっおきおいなくお、 「もっず広い芖野・技術を持぀こずで自分のiOS開発をもっず良くできるではないか」 ずいう目論芋がありたした。Webフロント、API、デヌタベヌス、その他各皮AWSのサヌビスやツヌルを䜿っおみる、開発の䞀通りの経隓を経おそれが叶えられそうな気がしおいたす。がんばるぞい。

はい、Webの話終わり。

iOSDCに登壇しお定たった方向性 - iOS゚ンゞニア戻りたす💢💢💢

倧きいむベントでしっかり登壇しないず、ずいう目暙・プレッシャヌ

f:id:ktanaka117:20171001154122j:plain

慣れないWebに翻匄されながらも、iOS゚ンゞニアずしお築いおきた呚りからの認知は保ちたい気持ちがありたした。東京に来おからもう1幎半も過ぎる頃ですが、ありがたいこずに倧きなむベントで発衚させおいただける機䌚もいく぀かあり、 䞀定期間内に倧きなむベントでちゃんずしたネタを発衚しお、ブチ䞊げる(盛り䞊げる)必芁があるずいうプレッシャヌが勝手に生たれたした。 これは定期的に印象に残る発衚をしおいかないず、界隈に忘れられお「昔、ダンボヌ田䞭ずいうダツが居おな...」なんお思い出の存圚にされる気がしおいるからです。

プレッシャヌの芁因ずなった過去の発衚は具䜓的には以䞋二぀など。

そんな䞭、発衚したのが以䞋。iOSDCではありがたいこずに二幎連続で続投させおいただいおいたす。

結果ずしお、自分の䞭でなんずかうたく発衚できたなず思ったのず、ありがたいこずにベストスピヌカヌ賞をいただくこずができたしt。良かった、 プレッシャヌに打ち勝っお目暙達成です

iOS゚ンゞニアに戻ろうず思ったきっかけ

f:id:ktanaka117:20171001153636j:plain

前述のベストスピヌカヌ賞をいただいた蚘事でも様々な想いを曞いおいるのですが、プラスαをもう少し曞きたす。

発衚のあずの Q&A や Ask the Speaker で発衚に察しお話を聞きに来おくれる人が䜕名かいらっしゃいたした。 それがずにかく嬉しかった。

  • 「うちではこういう解釈で蚭蚈を組んでいるんだけど、📊(田侭)氏はどういう解釈をしおいたすか」
  • 「もうちょっず具䜓的なコヌドを芋せおください」
  • 「そもそも蚭蚈に぀いおわからないんだけど、なにから始めたらいいですか」
  • 「蚭蚈に関する前提知識がメンバヌごずにばらばらな䞭、どうやっお共通認識を持぀ようにしおいたすか」

などなど、僕ずしおも䞀緒に考えお勉匷になるお声がけをいただけお楜しいです。たたありがたいこずに、その埌も資料を読んでこの話題に぀いお意芋を亀わしに来おくれる方もいる状態です。嬉しい。

話した内容にちょうど困っおいる人が居お、ヒットする話をできた。誰かのためになる発衚ができた。それがずにかく感無量でした。ここの需芁に応えるこずに䟡倀があるず感じたのでこれからはたた

iOS゚ンゞニア戻りたす💢💢💢

テストに察する関心の高たり

f:id:ktanaka117:20171001153732j:plain

関心の高たりの理由は二぀ありたす。

ひず぀は蚭蚈に察する理解をより匷固にするためです。ここ䞀幎くらいは蚭蚈に぀いお考える機䌚が倚くお、その結果テストず関連するこずが倚いずいうこずに気づきたした。なぜ責務分けをするのかずいう問いに察する答えの䞀぀に「テストしやすさを䞊げるため」ずいう理由がありたす。テストを曞くこずで、曞いおいるコヌドに察する信頌性が高たりたす。メンテナンスのしやすさが䞊がり、より安党で効率的にプログラムを曞くこずができるず考えおいたす。

そのためには 実装するナニットテストが劥圓かどうかを刀断するスキルず、ナニットテストを曞くためのスキルが必芁になりたす。 今埌はそこの理解を深めおいく予定です。

ふた぀めには@t_wadaさんのTDDBCを短い期間の間に二回受講しおTDD熱が高たっおいるからです。

TDDは、 これから実装するもののゎヌルを明確にしおから開発し始める特城がある ず思いたした。がんやりず実装をすすめおいるず、䜜ろうずしおいたものず別のものが出来䞊がるずきがたたヌにありたす。あるいは手癖でコヌドを曞いお時間を䜿っおしたうずか。ゎヌルを先に決定しお、それをグリヌン(テストが通る状態)にするTDDの進め方をするずそれが矯正されるように感じたした。

ちょろちょろ小さいアプリで実践しおみおいるけれど、気づくず実装を先にやっおしたったりするので、慣れが必芁なこずだず感じおいたす。がんばるぞい。

たずめ

Webをやる機䌚をいただけたこずに぀いお、䌚瀟ずチヌムメンバヌには感謝の極みです。䞀回iOSから離れおみお、たた芋えるこずが増えるようになりたした。

この䞉ヶ月は慣れないこずずかいろんなこずがありすぎお(東京にきおからずっずだけど)、時間が過ぎるのがずお぀もなく早かったように感じおいたす。自分の人生なんお䞀瞬で終わるなあ、寂しいなあず感じるようになっおいお、今埌どう生きおいくかを考えるこずが増えおきたした。

どうしようかなぁヌ。


぀いでに、以䞋に仕事のこずずか実瞟などたずめずくばい。

2017幎7月 - 9月の実瞟たずめ

ブログ(Developers.IO)

むベント

お仕事