タグ

ブックマーク / blog.riywo.com (18)

  • VancouverにあるAmazon S3チームのDeveloperになります - As a Futurist...

    tl;dr - Amazon に入って 3 年が経ちましたが、この度転籍という形で Canada の Vancouver にある Amazon S3 開発チームに Systems Development Engineer として移ることになりました。 2010 年頃からずっとなりたいと思っていた北米での開発者の仕事(もちろん英語のみ)なので、当に嬉しいです。AWS の Solutions Architect(SA)としてお客さんと向き合う仕事をじっくりさせてもらい、そこから実際に開発をしているチームに開発者として拠点も含めて移れるキャリアパスがあるんだよ、という一例になれましたので、SA になると自分の手を動かす機会が減ってしまうことを懸念している開発者の方の背中を押せたら幸いです。なお、2018 年 6 月頭に日を出国予定で日の会社も退職してしまうので、(旅行を除いて)日に戻って

    VancouverにあるAmazon S3チームのDeveloperになります - As a Futurist...
    punitan
    punitan 2018/05/14
  • DeNAを退職してAWSにJoinしました - As a Futurist...

    タイトルの通りですが、12 月末で 6 年弱勤めた DeNA を退職して、1 月から AWSJoin してます。日の Solution Architect です。初めての B2B のお仕事なので新卒新入社員の気持ちです。新卒入社時の予定ではもうアメリカに留学してるはずだったのに、どうしてこうなったのやら。。。 さて、DeNA にはエンジニア未経験の状態からここまで力を付けさせてもらって大変感謝しています。売上に直接貢献するような仕事はほとんどできなかったですが、起こらなかった問題に対する貢献は少しは出来たかなと思っています。そういえばここではちゃんと書いてなかったですが、最後の1年間は MYCODE という遺伝子解析サービスの開発をゼロから行っていて、何もないところからリリースまで辿り着くという産みの苦しみを味わうことができて非常にエキサイティングでした。ちょっとだけですが Sec

    DeNAを退職してAWSにJoinしました - As a Futurist...
    punitan
    punitan 2015/01/07
  • YAPC::Asia 2014に個人スポンサーで参加してきた - As a Futurist...

    2011, 2012 とスピーカーやって、2013 はアメリカにいて参加しなかったので、久々にトークも何もないシラフな感じでふらっと行ってきました。都合により金曜日のみ参加。 YAPC::Asia Tokyo 2014 運用ネタから言語ネタへ 2,3 年前の YAPC は運用まわりのトークが結構多かった印象でしたが、今年はそんなにないなーと感じました。多分、運用というものが一般的になってきて、ある程度ベーシックなものになってきたからだと思います。今は XaaS 的なものも増えてガチで全部構築する機会もどんどん不要になってきていますし、とても良い流れだと思いました。我々は自分たちの仕事を無くすために働いてきたのですから。 一方で多くなったなと思ったのが、Perl 以外のいろんな言語の話。Scala あり Swift あり Go あり PHP あり etc. これまた時代の流れだと思ってて、1

    YAPC::Asia 2014に個人スポンサーで参加してきた - As a Futurist...
    punitan
    punitan 2014/09/09
  • 運用エンジニアから開発エンジニアになるためにやったこと · As a Futurist...

    Web の会社でエンジニアを始めて 4 年、ずっと運用エンジニアをやってました。運用とは端的に言うと、社内外の他人が作ったソフトウェアを期待通りに動作させるためのエンジニアリングだと思ってます。アプリケーションはもちろん開発者が作ったものですし、MySQL や Apache や Linux も全部他人が作り上げたソフトウェアであり、それらの設定を変更したりパッチを当てたり運用ツールを駆使することで、協調動作させることに磨きをかけてきました。 ただ、いつまでたっても他人の作ったものの面倒を見てることには変わりないし、運用ツールを開発したところでそれはあくまで誰かが生み出す価値のサポートにすぎないのが自分的には満足できなくて、ずっとアプリケーション(ビジネスロジック)が作りたいと思ってました。 で、今年の始めからたまたまタイミングよく新規開発の部署に入ることになって、いきなり開発者をやることに

    運用エンジニアから開発エンジニアになるためにやったこと · As a Futurist...
    punitan
    punitan 2014/06/04
  • ポータブルなwebアプリケーションとそのインフラの未来の一考

    naoya さんのポータブルな Web アプリケーションを受けて最近思ってることをば。140 文字で時々書いてるんだけど、まとまりがないので一回まとめておきます。 12-factor app ステートフルなアプリケーションについては、Heroku の人が提唱してる 12-factor app というのが現在の状況をよく表してます。 The Twelve-Factor App The Twelve-Factor App(日語訳) Heroku や他の PaaS によってもたらされたこうした一種の”制約”によって、アプリケーションの新しいカタチが生まれてきています。引き算によって新しい価値が生まれてきているわけですね。 とはいえ、PaaS は PaaS でそれぞれに独自の仕様を持っているわけですが、Herokubuildpack という仕組みを使って、Heroku とインタフェース仕様

    ポータブルなwebアプリケーションとそのインフラの未来の一考
    punitan
    punitan 2013/12/04
  • 「これからのWeb(バックエンド)」を自分の頭で考えてみた - As a Futurist...

    ふと今更、年初のCROSS 2013の「次世代 web セッション」の動画を見て、うんうん唸ってしまった。プロトコル編の方は知識不足であんまり分からなかったですが、アーキテクチャ編の方はグサグサくるものがあった。「自分の頭でこれからの web を考えてブログに書くまでがこのセッション」という宿題が出ていたので、せっかくなので最近考えてることをつらつらと書いておこうと思った次第。特にまとまりはないですし、戯言です。 これからの Web の話をしよう。 (次世代 Web セッション @ CROSS2013) – Block Rockin’ Codes 前提 僕はコード書いてない&サーバサイドしか見たことない&WEB サーバはあんまり見たこと無くて、それより後ろ側ばっかり見てた人なので、ユーザ側とかアプリ開発者がどうなっていくかについて特に尖った意見はありません orz SPDY とかもまだ手を

    「これからのWeb(バックエンド)」を自分の頭で考えてみた - As a Futurist...
    punitan
    punitan 2013/05/29
  • GrowthForecast as a Serviceみたいなもの - As a Futurist...

    と思ったので、とりあえずということで誰でも自由に GrowthForecast を使える様にしただけのものは公開してみました。 http://test.gfaas.com/ 参考:GrowthForecast を Heroku で動かしてみる – As a Futurist… “GrowthForecast as a Service” = GFaaS ということで、ドメイン取ってみてます。これまで GF 使ったことがなかったという人も、適当に好き勝手にグラフ作ってみてもらって構いません(ただしいつサービス止まったりデータ消えたりしても怒らないで下さい。。。) グラフ何もないと面白くないかなと思ったので、適当に僕の Twitter の TL の件数とかをぶち込んでみました。 http://test.gfaas.com/view_graph/example/twitter/riywo_TL_n

    GrowthForecast as a Serviceみたいなもの - As a Futurist...
    punitan
    punitan 2012/10/30
  • incron使ってスクリプト送り込んだら勝手に起動する仕組み考え始めた - As a Futurist...

    incron というのを知らなかったのですが、これとても夢が広がりますね。 ファイル/ディレクトリの変更を検知してコマンドを実行する incron – Glide Note – グライドノート というわけでとりあえず軽く膨らませてみました。 ちょっとしたスクリプトをたくさんのサーバで気軽に実行したい という要求はままあると思います。その際に、実際にサーバ側でやりたい処理をスクリプトにして、それを rsync で送り込んでから ssh で叩くとかやってたんですが、incron 使うとすごくスッキリとやれます。つまり、サーバ側でファイルが送り込まれたことをトリガーにして、そのファイルを実行してやればいいだけです。 ただ、そのスクリプトが残り続けるの気持ち悪いし、標準出力とかをログにだしたり、さらには fluentd に送ったりしたいですよね:) というわけで超簡単なラッパースクリプトを介してみ

    incron使ってスクリプト送り込んだら勝手に起動する仕組み考え始めた - As a Futurist...
    punitan
    punitan 2012/08/29
    incron使ってスクリプト送り込んだら勝手に起動する仕組み考え始めた - As a Futurist... (via Instapaper)
  • 今更CAP定理で分散データストアの勉強を始めてみた - As a Futurist...

    長くなったので三行でまとめると CAP 定理を素人なりに調べてみた 分散データストアを CAP 定理で俯瞰してみた どのデータストア使うかの決定因子は CAP 定理的な視点の方がインタフェースとかより先 異論は認めるというか、専門知識ゼロなのでもっと正しい理解があればぜひ教えてくださいませ。 はじめに 僕は MySQL 厨なんですが、最近はやれ「MongoDB がいい」だの「HBase 最高」だのとよく聞きます。これら多種多様なデータストアを語る上で、「RDBMS VS NoSQL」みたいに問い合わせ言語の方式やデータ保存形式の違いで語るのは宗教論かなぁと僕は思ってます。単体プロセスのデータストアとしての特徴とか性能とかは正直なんでもいいかなぁと。 思うに、質的に重要なのは MySQL の master-slave&sharding という Web で今までスタンダードに使われてきた分散

    今更CAP定理で分散データストアの勉強を始めてみた - As a Futurist...
    punitan
    punitan 2012/07/29
  • MySQL Binlog APIを試してみる - As a Futurist...

    MySQL のレプリケーションは素晴らしい仕組みなのですが、ちょっと凝ったことをしようとするには機能が限られています。特に、MySQL の更新を他のデータストアにマイグレーションしたいような時は、Trigger を使って超頑張るのはイマイチで、バイナリログを使ったレプリケーションの仕組みをそのまま拡張してマイグレーションするようなワーカーを書きたくなるものです。 そんな時に使える便利な API として、Binlog API というものがあります。まだ開発途上ではありますが、期待の持てる API です。 assets.en.oreilly.com/1/event/61/Binary log API_ A Library for Change Data Capture using MySQL Presentation.pdf 試しにどんなもんなのか使ってみました。 追記 2012/07/09

    MySQL Binlog APIを試してみる - As a Futurist...
    punitan
    punitan 2012/07/09
  • Perlでハッシュのキーをdecode_jsonに渡すと壊れる - As a Futurist...

    タイトルの通りで、とりあえずperl-5.14.2/JSON 2.53でセグフォしました。。。 gfx 先生によると、実はハッシュのキーは単純な文字列じゃなくて、それをdecode_jsonに渡すと壊れる模様。 @riywo これは興味深いですね!ハッシュのキーは「FAKE」とよばれる特殊な文字列なのですが、それをJSON::XS::decode_json() に渡すとデータが壊れるようです。たとえば Dumper() ではなく $json に何か代入しようとしてもSEGVします。 — FUJI Goro (@__gfx__) June 15, 2012 perl-5.8.8 だと多分大丈夫そうな予感(use JSON::XSしてます)。あんまり色んなバージョンを手元に入れてないので試しきれてないですが、とりあえず報告ということで。 参考 - XS で共有文字列を活用する – Island

    Perlでハッシュのキーをdecode_jsonに渡すと壊れる - As a Futurist...
    punitan
    punitan 2012/06/29
    手元では再現しなかっった
  • perlbrewとextlibなアプリのcronとかdaemontools - As a Futurist...

    perl は system perl じゃなくて perlbrew で入れて、アプリで必要な CPAN モジュールは全てアプリのディレクトリ下の extlib というディレクトリにインストールする方式は個人的にはいい感じだよなぁと思いつつ、cron とか daemontools がいつもどうやるのが正解なのか分からず困ってた。 またセットアップする機会があったので色々考えた結果、こんな感じなら割とすっきりした感じになった。 env このファイルがキモで、アプリのディレクトリに移動しつつ、いい感じに perl とか PATH とか@INC を設定して、渡されたコマンドを実行してくれる。 # perl -v This is perl, v5.8.8 built for x86_64-linux-thread-multi # ./env perl -v This is perl 5, versi

    perlbrewとextlibなアプリのcronとかdaemontools - As a Futurist...
    punitan
    punitan 2012/05/26
  • NHNテクノロジーカンファレンスでしゃべって来た #nhntech - As a Futurist...

    前日に Fluentd Casual Talks を会社で開催してぐったりしたまま、NHN さん主催のテクノロジーカンファレンスで 25 分の発表をしてきました。講演者の中で 1 人だけ一般人感が滲み出ていて大変恐縮でした。 “Mobage DBA Fight against Big Data” - NHN TE from Ryosuke IWANAGA 動画もあります 感想 実は MySQL の話をこれだけちゃんとしゃべるのは内にも外にも初めてでした。雑誌の記事とかで数ページとかはありましたが、外向けにしゃべる時は運用周りの事ばっかりでしたね、実は。 自分が join する前からあった技術、入ってから使った・作った技術をおりまぜて、といいつつ別に弊社独自のものはほとんどなくてごくごく一般的な知識を紹介しているので、MySQL の大規模運用については割と網羅的にまとめて紹介できたかなぁと思

    NHNテクノロジーカンファレンスでしゃべって来た #nhntech - As a Futurist...
    punitan
    punitan 2012/05/22
  • GNU Development Toolsが良書すぎてヤバい - As a Futurist...

    gcc hoge.cってするとa.outができて実行できて、まぁなんて C プログラミングって簡単なんでしょう!ってレベルのプログラム力しかないんですが、何の因果かそれがどうやって動いてるのか/できてるのかが気になり始めるお年頃を迎えてしまっている riywo です。情弱です。 jemalloc とか LD_PRELOAD について調べてみた – As a Futurist… この記事を書いてる時に、そもそも動的リンクとか静的リンクとか、概念的にはぼやっと分かってるつもりだけど、細かいことなんにも知らないなーやばいなーって思ってたら、mizzy さんが「GNU Development Tools」というを教えてくれました!ありがとうございます! GNU 開発ツール|オーバーシー・パブリッシング このは自費出版されているで、すでに上記サイトでは取り扱いがなく、絶版状態で困ってしまいまし

    GNU Development Toolsが良書すぎてヤバい - As a Futurist...
    punitan
    punitan 2012/04/26
  • 若者がパッケージ管理について思うこと - As a Futurist...

    App::llenvというのを書いたり、Touryoというサーバの設定管理ツールを書いたりする中で、広義な「パッケージ管理」というものにすごい興味を持っているので、思うことを書いてみる。 **【追記】**タイトルが意味不明っていっぱい言われたのでえいやと変えてみた **【追記】**結論書き忘れてたので続きを書いた: 若者がパッケージ管理について思うことの今の結論 – As a Futurist… パッケージ管理って怖くてよく分からないとか思ってる人に少しでもパッケージ管理に親しんでもらえればと思って書いてる。かく言う僕も Perl の Catalyst や Plagger のインストールに泣いたり、rpm の依存ぶっ壊して戦々恐々としたりした経験があってここにいるわけなんですが、もうみんながそういう苦労するのあほらしいよなぁと思うので、パッケージ管理ってどういうところが勘所なのか知ってもら

    若者がパッケージ管理について思うこと - As a Futurist...
    punitan
    punitan 2012/03/29
  • MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...

    しわっす!DBA 兼オペレーションエンジニア兼タスクマネージャやってる riywo です。何のネタを書こうかなぁと考えたのですが、正直ネタを仕込む時間もなかったので僕がいつもやってることをさらっと紹介するということで勘弁して下さい>< MySQL がおかしい! 03:14 hidek: なんかエラー出まくってるんだけど! 03:14 zigorou: MySQL と通信してるとこっぽい 03:15 riywo: 見ます こんなやりとりは皆さん日常茶飯事ですよね?ね?ね?こんな時に、DB に責任を持つものとして真っ先に対応するのが僕らの仕事です。でも、じゃあ具体的にこのあと何をしましょう?既にサービスはエラーだらけで一刻を争う状態です。 (対応開始) まずはエラーメッセージ 今回の様な場合はアプリのエラーログにどばっと MySQL に関するエラーが出ているでしょう。まずはそれを見ることが始ま

    MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...
    punitan
    punitan 2011/12/02
  • #isucon に参加してきました&isuconツールを試してみました - As a Futurist...

    「なんでもありの」といううたい文句の通りに楽しめたチューニング大会#isucon に参加してきました。 livedoor Tech ブログ : なんでもありの Web アプリケーション高速化バトル、#isucon 開催のお知らせ 最初は参加するつもり無かったんですが、知ってる方がかなり参加されそうだったのと、MySQL Casual の帰りに@kamipo さんが 「3 人チームで#isucon に申し込んだけど、『kamipo』『未定』『未定』やねん!」 と悲しそうにしていたので、kamipo さんと 2 人チームで参加させて頂くことになりました。kamipo さんホントありがとう!!ちなみにチーム名はふたりとも大好きな「チームやすべえ」 あんま大したことができなかったし、藤原組とかいうや ◯ ざなチームが圧倒的な強さを見せたりしていたので、真面目な話はそちらにお譲りします! #isuc

    #isucon に参加してきました&isuconツールを試してみました - As a Futurist...
    punitan
    punitan 2011/09/01
  • MySQLでslave追加時にmasterが全力でbinlogを送って困る時 - As a Futurist...

    たまにはしょうもない TIPS でも。MySQL の魅力といえば言わずもがな 10 年の歴史を誇る「レプリケーション」の仕組みだと思います。これさえあれば 1 つの筐体で必死にデータ保全しなくてもコピーがいくらでも増やせるし、@nippondanjiさんのスライドにある通り、レプリケーションの妙技を駆使することで様々に柔軟な運用を行うことができます。 Art of MySQL Replication. slave 追加とは? さてそんなレプリケーションですが、実運用で最も多く行われるオペレーションは「slave の追加」だと思います。追加の方法は大きく分けると 2 通りです。(ストレージエンジンは InnoDB を想定。というか InnoDB 以外認めません><) 論理バックアップを利用 mysqldump 等を利用して論理的にデータの静止断面を作る&その時の binlog のポジションを

    MySQLでslave追加時にmasterが全力でbinlogを送って困る時 - As a Futurist...
  • 1