タグ

ブックマーク / note.com/psychs (4)

  • ソフトウェアエンジニアとして心がけていること|Satoshi Nakagawa

    SF ベイエリアで働く1人のソフトウェアエンジニアとして、楽しくエンジニアリングをやっていくために日頃からぼんやりと心がけている3つのポイントについて今回は書いてみたい。 インフラを作る側にいるソフトウェアエンジニアとして普通の Software Engineer から Senior Software Engineer、Staff Software Engineer とだんだん昇進していくにしたがって、より大きな成果を出すことを期待される。Staff レベルにはチームをまたいだ成果を出すことが求められる。そのためには多くの場所で使われるようなサービスやライブラリを作るのが一番成果としてわかりやすい。 会社とプロダクトが初期段階から成長していく過程で、最初は1つしかなかったエンジニアリングチームが大きくなるにしたがってインフラ側とプロダクト側に分割されていく。そのときにかならずインフラ側に属

    ソフトウェアエンジニアとして心がけていること|Satoshi Nakagawa
  • Twitter での6年間 #3|Satoshi Nakagawa

    (Twitter での6年間 2 からの続き) 秋になると、上のほうが「Twitter は mobile centric company になる」という方針を打ち出した。つまり、それまではずっとウェブ中心の会社だったのを、これからはモバイル中心にシフトしていくという決意表明だ。その方針に従い、新機能を作るときにはまず iOS か Android に実装することが必須になった。もちろんプロジェクトに十分なエンジニアがいれば、ウェブも同時に実装してもいい。だが、これまでのようにウェブを先に作ってリリースしてから、あとで iOS と Android の実装を進めてリリースするということはしないことになった。その後のウェブトラフィックのかげり具合とモバイルユーザー数の伸びを考えると、いい時期のいい判断だったと思う。 そのころ、1人の男性エンジニア育児休暇で10週間の休みに入っていた。少ししてから

    Twitter での6年間 #3|Satoshi Nakagawa
  • Twitter での6年間 #2|Satoshi Nakagawa

    (Twitter での6年間 1 からの続き) SQLite の導入とモデルレイヤーの刷新がうまくいったあと、ぼくは次のプロジェクトを探していた。何をやれば最終的に一番ユーザーのためになるか。そのときに選んだのは、JSON パーザーの置き換えだった。当時の Twitter for iOS は、YAJL という C で書かれた JSON パーザーをプッシュ形式のインタフェースで使っていた。プッシュパーザーはドキュメントパーザーに比べてピークのメモリ使用量は多少低くなるものの、パフォーマンスが悪くなる傾向がある。プッシュパーザーを使う側のコードは見通しが悪くなりバグが入りやすく、チームにとって頭痛の種だった。それを iOS 標準の NSJSONSerialization に置き換えることにした。Twitter for iOS のコードベースに存在するほぼすべてのモデルクラスの JSON データ

    Twitter での6年間 #2|Satoshi Nakagawa
    yuiseki
    yuiseki 2018/07/01
  • Twitter での6年間 #1|Satoshi Nakagawa

    2012年1月、Twitter の iOS チームに7人目のエンジニアとして入った。 たまたま最初の週が Hackweek だったので、通常の仕事は一旦停止。なんでもやりたいことをやっていいらしい。入ったばかりで何もわからない状態だったので、ぼくのメンターのテックリードがやっていた Twitter for Mac の多言語化を手伝うことにした。水曜にパッチをマージしてもらって、ぼくの担当部分は完了。その後は次週から始まる通常営業に備えてコードを読み始めた。 次の週からは通常のサイクルが始まった。毎朝スタンドアップミーティングがあり、各自の仕事の進み具合を他のメンバーと共有する。前職までは同僚がほぼ日人ばかりだったので英語仕事をしたことがなく、聞き取りがうまくできなかったのを覚えている。 この日からさっそく Twitter for iOS のユーザーとして気になっていた問題を直し始めた。

    Twitter での6年間 #1|Satoshi Nakagawa
  • 1