タグ

ブックマーク / tomoima525.hatenablog.com (15)

  • スタートアップでソフトウェアエンジニアとして10年たって大事にしていることリスト - tomoima525's blog

    今から10年前の2014年4月に、いわゆるIT系大企業のDBエンジニアを辞めてメルカリでソフトウェアエンジニアとして働き始め、そこから紆余曲折を経て10年たった。 当時の予定通り、まだ現役でコードを書いている。海外に拠点は移り、色んな国の人たちと仕事をするようになり、役割もテックリード、マネジャー、CTOと変わってきた。ソフトウェア開発について考え方もさまざまな変遷を経ているが、少しずつ培ってきた、大事にしていることをあげてみる。 ソフトウェア/アーキテクチャ/コード ソフトウェアは他者の価値(i.e. 課題を解決する/コストをカットする)を生み出してなんぼ。コードが綺麗でも売上は立たない。 アーキテクチャやプログラミング言語のトレンドは変化する。追いかけるよりも、その時々のチームやプロダクトに合った設計やプログラムを選択する。 遊び心は大事。チームやプロダクトにそれほど合ってなくても新し

    スタートアップでソフトウェアエンジニアとして10年たって大事にしていることリスト - tomoima525's blog
    koogawa
    koogawa 2024/04/02
    “ソフトウェアは他者の価値(i.e. 課題を解決する/コストをカットする)を生み出してなんぼ。コードが綺麗でも売上は立たない” 良いことが書いてある
  • 「なんとなく元気がない」状態には名前があり対応が必要だと全マネジャーは知っていたほうが良い - tomoima525's blog

    ポッドキャスト Today I Learned FMの28 回目はメンタルヘルスの話題について話しました。この記事はその収録に関する追記です。 anchor.fm 「なんとなく元気がない」 = languishing www.nytimes.com "バーンアウトでもないし、うつでもない。けどどこか希望がない。なんか楽しくないし、目的ももてない。なんだかモヤモヤする。" この症状に対し、社会学者の Corey Keyes 氏は languishing という名称をつけました。日語だと"衰弱"という意味ですが、要はゆるやかに不調になっている状態を指します。 languishing のやっかいなところは、これまで明確に言語化されていなかったために、症状として認識されていなかった点です。認識されていないために早期の対応が遅れ、やがて当のうつに移行していく可能性が高いです。 元記事では、パンデ

    「なんとなく元気がない」状態には名前があり対応が必要だと全マネジャーは知っていたほうが良い - tomoima525's blog
    koogawa
    koogawa 2021/06/18
  • iOS NativeからReact Native に乗り換えた Shopify の話聞いてきた - tomoima525's blog

    "最も使われているサービスのひとつを iOS Native から React Native に作り変えた" というアナウンスメントを出し話題となった Shopify で、まさにその内容を扱った React Native の meetup があり、参加してきたので内容と所感をまとめました。 React Native is the Future of Mobile at Shopify 発表内容 検証/導入フェーズ 技術スタック React Native がもたらした効果 途中でやめたこと 追加で登壇者に聞いたこと その他の発表 React Native for Web @twitter その他もろもろ React Native is the Future of Mobile at Shopify React Native で書き換えた話はしばらく前にアナウンスしていたのですが、Shopify

    iOS NativeからReact Native に乗り換えた Shopify の話聞いてきた - tomoima525's blog
    koogawa
    koogawa 2020/01/31
    Twitter の React Native for Web をなぜ導入したかの話が面白かった
  • Kotlinの標準ライブラリ(let, apply, with etc)を何となく使うから卒業する - tomoima525's blog

    Kotlinの標準ライブラリ便利ですよね。Kotlinを書き始めて T.?let{ } の便利さには感動しました。標準ライブラリ色々ありますが、どんなものがあり、どういう挙動をするのかよく把握していなかったので、自分の勉強のために*1まとめてみました。 前提 以下のようなシンプルなクラスを標準ライブラリで触ります。 class Test { var message = "test" val length: Int get() = message.length fun foo(text: String): Unit = println("foo: " + text) } let 定番のやつ。自身を引数としてブロック関数に渡します。変数スコープを限定したいケースで有用ですね。ブロック関数の返り値を設定してない場合は返り値がUnitになります。 // let // public inline f

    Kotlinの標準ライブラリ(let, apply, with etc)を何となく使うから卒業する - tomoima525's blog
    koogawa
    koogawa 2019/04/27
  • 旅をしながら仕事をする、あるいはリモートワークができるチームの作り方の話 - tomoima525's blog

    12月中旬から1月中旬のおよそ3週間と少しのあいだ、ヨーロッパを旅しつつリモートで仕事をしていました。自分が働いている会社は現在サンフランシスコと日に拠点があり、日にいるメンバーも北海道や北関東など様々な場所からリモートで働いています。今回旅行中どう働いたのかという話に加えて、旅先で気づいたリモートチームを作るためにチームが備えるべきことについて書きました。 「遠い太鼓」にあこがれて 準備 リモートで働く 良かったこと 大変だったこと リモートメンバーを迎えるために コミュニケーションコストを低くする タスクにコミットメントする仕組み作り リモートメンバーを信頼するマインドセットの醸成 まとめ 「遠い太鼓」にあこがれて 村上春樹さんの「遠い太鼓」というはご存知でしょうか。「ノルウェイの森」を書き上げた頃の3年間を綴った旅行記です。当時村上さんはギリシャやイタリアに滞在していました。

    旅をしながら仕事をする、あるいはリモートワークができるチームの作り方の話 - tomoima525's blog
    koogawa
    koogawa 2019/01/23
    "ひとりにしない(left alone)"ことも重要ですが、"ひとりで自走できる(be able to run alone)"も重要です”
  • クライアントとサーバーどちらに実装するかの設計指針をチームで持つこと - tomoima525's blog

    モバイルアプリケーションを開発していると、この要件や仕様はクライアントとサーバーどちらに置くべきか、という議論がチームでなされることがしばしばあります。例えば、 あるレスポンスAを受けて処理Bを行い、その結果をユーザーに提示する 登録処理などで、処理C,処理Dという異なる処理を並列して行い、それらが完了したらユーザー側に通知する やろうと思えばクライアント側で処理を全て持つこともできますし、サーバー側で実装もできますね。 このような仕様のディスカッションが起きたとき、チームで統一した判断基準を持っていますか? 自分の場合、クライアントアプリはロジックをなるべくサーバーに移譲すべき という設計指針をチームに提案します。 上の例で言うならば、 サーバーから処理Bも踏まえたレスポンスA'を返してもらい、ユーザーに提示する クライアントは1リクエストをサーバーに投げる。サーバー側で処理C,Dを投げ

    クライアントとサーバーどちらに実装するかの設計指針をチームで持つこと - tomoima525's blog
    koogawa
    koogawa 2019/01/06
    “クライアントアプリはロジックをなるべくサーバーに移譲すべき” 自分も同意見
  • メルカリを退職してChanoma, Inc. にジョインしました - tomoima525's blog

    近況報告です。11月頭にメルカリを退職し、サンフランシスコを拠点とするChanoma, Inc.にジョインしました。 Chanoma, Inc. では何をしているのか Chanoma, Inc. ではChompというサービスを開発しています。Chompはレストランやお店でべたものを親しい人とシェアできるソーシャルアプリです。美味しいお店の美味しいごはんの写真はみんな撮ります。その写真はソーシャルでシェアされたり、あるいはスマホ容量の肥やしになったりします。Chompはこの写真や行ったお店の場所を、グルメな友人や家族といった人たちと気軽に共有できるサービスです。 chomp.app 現在 iOS版しかないのですが、もし興味もってもらえたらダウンロードしてユーザー名 tomoima525 に友人申請してください。飯友待ってます! なお、このようなサービスは High Value Niche

    メルカリを退職してChanoma, Inc. にジョインしました - tomoima525's blog
    koogawa
    koogawa 2018/12/01
    お疲れ様でした!🎉 なんでこの方だけジョインいじられるねん
  • 日本向けのアプリとUS向けのモバイルアプリの違いはなにか - tomoima525's blog

    向けのアプリとUS向けのモバイルアプリを開発した経験から、よく「日のアプリとUS向けのアプリの違いって何ですか?」と聞かれることがあります。UIUX観点で色々な違いはあるのですが、個人的に最も違う点を挙げるなら、タイポグラフィだと思います。US、いやおそらくアルファベットを使う国のアプリは、タイポグラフィが日のアプリと比べて圧倒的に重要視されています。 具体的にどういうことなのか、またもし海外向けアプリの設計に携わることになった時にどういう点を考慮すべきなのかについて書こうと思います。 タイポグラフィを意識したアプリ タイポグラフィはwikipediaによると 活字(あるいは一定の文字の形状を複製し反復使用して印刷するための媒体)を用い、それを適切に配列することで、印刷物における文字の体裁を整える技芸 とあります。つまりいかにフォントのレイアウトを整えていくかというのがタイポグラ

    日本向けのアプリとUS向けのモバイルアプリの違いはなにか - tomoima525's blog
    koogawa
    koogawa 2018/04/17
    国ごとの違い。面白い
  • アメリカ西海岸に移住して2年がたった - tomoima525's blog

    アメリカのベイエリアに移住して2年がたってしまいました。タイトルはベイエリアよりもキャッチーかなと思って"西海岸"にしました。ちょっとした節目であるので、環境や心境の変化などをつらつらと書きとめておこうと思います。 仕事 去年は会社のアプリをフルスクラッチで書き直すというプロジェクトがあり、業務ではずっとそれにかかりきりでした。一からアプリを作るという経験はそうそう得られるものではないので、失敗や苦労も含めてとてもよい経験でした。 開発については自由に取り組む機会があったので主として取り組んだAndroidだけでなくReactNative(Javascript), Go, Swiftなど色々なプラットフォーム、言語でコードを書きました。 多様な開発に携わるメリットとしては、その言語やプラットフォーム、フレームワークにおける思想を身につけられることでしょうか。たとえばReact Native

    アメリカ西海岸に移住して2年がたった - tomoima525's blog
    koogawa
    koogawa 2018/01/27
    “ 多くの国の人が英語を使っているから文法が間違っていても皆理解してくれるよ” これはStackoverflow見てても感じる
  • 結婚式でLINE Message APIを使った写真共有サービスを作った話 - tomoima525's blog

    先日結婚式を挙げました。式中ご参列いただいた方と簡単に写真を共有したいなと思い、そういうマイクロサービスを作ってみました。ここではどのように実装していったのかを記憶が薄れぬうちに書いていこうと思います。 着想と仕様 自分が結婚式に参列する時、写真を撮るものの、主賓に送りそびれることがよくあって、だったらそのままさくさく送れたら楽じゃんねーと思っていました。で送りっぱなしだとグルーブ感がないので、出来たらその場でシェア出来たらよいかもと考えていました。それを踏まえて仕様としては、 その場でサクサク送れる 送った写真をリアルタイムに共有できる ことを目指しました。 全体構成 全体構成は以下のようになっています。 LINE Message APIを使ってLINEのチャンネルを参列者に登録してもらい、そこから写真を投稿してもらいます。webhookを介して画像データをサーバーに渡し、CDNに保存し

    結婚式でLINE Message APIを使った写真共有サービスを作った話 - tomoima525's blog
    koogawa
    koogawa 2017/10/17
    ご結婚おめでとうございます㊗️
  • 2年目以降のエンジニアなら手元に置いておくべき一冊 "スーパーエンジニアへの道" - tomoima525's blog

    今日は表題にある一冊のについて紹介します。このについては、折々につけて人に話したりTwitterでつぶやいているのですが、いつも伝えきれないのでブログに書いておきます。 さらっと内容 スーパーエンジニアへの道―技術リーダーシップの人間学 作者: G.M.ワインバーグ,木村泉出版社/メーカー: 共立出版発売日: 1991/10メディア: 単行購入: 22人 クリック: 382回この商品を含むブログ (86件) を見る 書はエンジニアコンサルタントである筆者(ワインバーグ氏)の経験に基いて書かれた、リーダーシップを持った問題解決型のエンジニア(=スーパーエンジニア)となるための指南書です。なお、書の原題は "Becoming a Technical Leader(技術リーダーになるために)" となっていますが、個人的にはスーパーエンジニアという響きがかっこ良くて気に入っています。

    2年目以降のエンジニアなら手元に置いておくべき一冊 "スーパーエンジニアへの道" - tomoima525's blog
    koogawa
    koogawa 2016/09/07
  • サンフランシスコで強盗にあった話 - tomoima525's blog

    こともあろうにサンフランシスコで強盗にあうというステータス解除をしてしまいました。今回はその顛末と、周りの反応がアメリカっぽかったので、それについて書きます。 経緯 その日は19時半頃にオフィスを出て、最寄りの地下鉄駅(BART)に向かいました。ところが一駅移動したタイミングで車が線路に立ち入ったということで、電車が運転を停止。(そもそもこんな事態が初めて)再開を見込んで1時間ほど待ったものの結局復旧のメドは立たず、代替輸送のバスも200m位の列が出来ていたので、諦めてオフィスに戻ることにしました。 ダメだ😵 pic.twitter.com/GsWwSqe1lh— Tomoaki Imai (@tomoaki_imai) 2016年7月21日 復旧の見込みないらしい、詰んでからが勝負— Tomoaki Imai (@tomoaki_imai) 2016年7月21日 この時は余裕もあった

    サンフランシスコで強盗にあった話 - tomoima525's blog
    koogawa
    koogawa 2016/08/30
    助けてくれたアジア人男性は無事だったんだろうか…
  • エンジニアが手早く英作文をする時はかどる Tips - tomoima525's blog

    GithubのPRや海外Slackチャンネルでチャット、はたまた英語圏のエンジニアとやりとりする等、英語で文章を書くことはしばしばあります。そんな時、自分がよく使っている方法について書きます。 先に一番大事なこと 大事なことは、英語はあくまでもツールだということです。伝えたい内容が重要であり、英文を書くことに時間かけることはエンジニアにとって不毛です。 よっぽど英語が得意な人でないかぎり、一から英作文すると時間がかかって質的でないところで時間を消費するということです。 なので一から文章を考えるのでなく、なるべく"型"を知ることがポイントだと考えています。それを踏まえた上で御覧ください。 文章を書く アルクの英辞郎とGoogle, Githubを組み合わせる 恐らく多くの人がGoogle翻訳などを使って英文を作っているかと思うのですが、アルクの英辞郎と組み合わせるともっとはかどります。理由

    エンジニアが手早く英作文をする時はかどる Tips - tomoima525's blog
    koogawa
    koogawa 2016/02/22
    Githubの検索で issueを見るの良さそう
  • スタンディング・コーディングを試してみた - tomoima525's blog

    シリコンバレー(主にベンチャー界隈?)では立ちながら仕事をするのがしばらく前から流行っているようです。 あの37signalsやgithubでも、立ちながらコーディングする人たちが結構いるようです。 参考 http://zenstartup.jp/2012/02/29/standingdesk/?utm_content=buffer24c96 http://matsutakegohan1.com/?p=570 立ちながら仕事をすることによって以下のようなメリットがあるとのことです。 スタンディングデスクのメリット 寿命を伸ばす 脂肪を燃焼させ体重を減らす 背中や腰の痛みを減らす 集中力を高める 心地良い疲れが満足度を高め睡眠の質を高める (zen startupより引用) むむ、いいことばかりではないか! ということで試しに一週間スタンディングコーディングをやってみましたので、良かった点、

    スタンディング・コーディングを試してみた - tomoima525's blog
    koogawa
    koogawa 2015/10/15
    時間帯で座るのと立つのを切り替えたい
  • アメリカでは How are you? というだけで世界が変わる - tomoima525's blog

    現在サンフランシスコに長期で滞在していています。そんな中で、これは良かったなという気づきがあったので、シェアしたいと思います。 同僚のカレーの具が多かった話 ことの発端はカレーから始まります。 オフィスから10分くらい歩くとフェリービルディングがあります。いくつかテイクアウトできるお店が入っていて、そこでご飯を買って海辺でべることができます。 その中のひとつに日を提供するお店があり、カレーがうまいので同僚とよくべていました。 ある日いつものようにカレーを買って、ふと同僚(イギリスのバイリンガル)のカレーのタッパーを見てみると、明らかに自分のより多い。肉も多い感じがする。 自分「あれ、なんか量多くないですか?」 同僚「そりゃそうだよ。ちゃんと言葉を交わしてるからね。How are you?って聞かれて、How are you?って返してる?」 自分「いや、あんまり…」 同僚「ちゃんと

    アメリカでは How are you? というだけで世界が変わる - tomoima525's blog
    koogawa
    koogawa 2015/05/04
    Goodで終わってた。また行く機会があれば試してみよう
  • 1