僕がリモートワークをする上で工夫していることと『リモートワークの達人』

去年は自分の中でリモートワーク元年でした。世の中の流れ的にそうだったという方も多いのではないかと思います。

僕の所属するGMOペパボは新型コロナウイルスの感染拡大に備え、GMOインターネットグループ全体で2020/01/27からいち早く在宅勤務体制へと移行しました。

GMOインターネットグループ、新型コロナウィルスの感染拡大に備え在宅勤務体制へ移行 | GMOインターネット株式会社

この記事では約1年のリモートワーク通して僕が思うところを書いていきます。

リモートワークするうえで工夫していること

家だとなかなか気分の切り替えが難しいため、朝のルーティンを工夫しています。家事とか食事とかを省くとこんな感じでやってます:

  • 朝散歩: 日光を浴びて生活のリズムを整えながら運動します。僕は近所の大濠公園を1周 (2km) しています。朝散歩はかなり調子良くなるので本当にオススメです。
  • コーヒーを淹れる: 朝の楽しみです。いい香りで今日も朝が来たと実感します。
  • ラジオ体操: 元国立スポーツ科学センター医学研究部研究員の中村格子さんも推奨している運動です。体を柔らかくしつつ気分転換のスイッチとなります。
  • 部屋のシーリングライトを暖色から白色に切り替える: これも気分転換のスイッチとなります。
  • Perfumeのエレクトロ・ワールドをかけながら仕事スタート: ルーティンとして仕事始まりのモードを高めます。かける曲はマンネリ化しないよう不定期に変えていきます。

半分儀式化して仕事モードに切り替えています。逆にこんだけしないと気分が切り替わらないんですから働くって大変ですね。

個人的に在宅勤務で何が大変かというと仕事を始める前と昼休み休憩後の復帰だと感じます。
そのためなるべく出勤時間を揃えるようにしています。GMOペパボのエンジニアはフレックス制であり、勿体ない感じがするかもしれませんが、僕には決まった時間からの出勤が合っているようです。

あとは外に出ても恥ずかしくない格好に着替えています。ビデオ会議に映らない下半身だけスウェットといったことがないようにしています。

最近引っ越したのですが、仕事部屋とくつろぐ部屋をしっかり分けてもいます。

『リモートワークの達人』

改めてリモートワークの先駆者の考えを知ろうと、DHHの所属する37signals(現Basecamp)の2人が書いた『リモートワークの達人』を読みました。原著は2013年発売と古い本ですがこのご時世でベストセラーとなっているようですね。今読んでも十分通用する(というか時代が追いついた?)本だと思いました。

リモートワークがいかに素晴らしいかということだけではなく、アンチパターンを数多く紹介しながら、ただ導入すればいいものではないと現実的に書かれているのが印象的でした。
また、人によっては合わない人もあるのでただ一律に導入すればいいという類のものではないとも書かれています。

リモートワークだとサボるのではないかと考えがちですが、働く人を信頼することが大事なのだということを繰り返し説いています。ちなみに出社していればサボらないかというとそうではなく、大手百貨店のJCペニーではトラフィックの約30%がYouTubeの視聴に使われていたという調査結果もあるようです。

個人的に印象に残ったのは、アメリカの政府系機関は当時でも特許商標庁職員の85%、NASA職員の57%、環境保護庁職員の67%がリモートで働いているということです。この辺り、どうしても日本の現状と比べざるを得ません。

人柄が大事、文章力が大事といったことも書かれていますが、ここはかなり実感しています。リモートだからこそ表現に気をつけ、感謝の意を気軽に伝えるようにしています。

あとは毎項最後に挿し込まれる挿絵がその項をよく表現していてとても面白かったです。

余談ですが今となっては独自メールを持っているBasecampがGmailの使い方を説明しているのも時代を感じさせました。

まとめ

以上、リモートワークについて思うところを書いてみました。

試行錯誤が続く中かと思いますが、皆さんもこんなTipsがあるよといったことがあったら是非教えて下さい。

2021年抱負

今年も前年に引き続き箇条書きで。

技術

  • TypeScript
  • React
  • Next.js
  • Docker / Kubernetes
  • Go (余裕あったら)

仕事

  • 等級上げる

色々

  • 毎月1記事のペースでブログを書く
  • お気に入りのキーボードを見つける
  • ギターで弾ける曲を5曲増やす
  • お金周りの勉強(貯金以外の資産運用の手段を増やす)
  • 体重を理想体重まで減らす
  • 健康に気をつける
  • 周りの人を大事にする

前年はインプットの年にしたので今年はアウトプットやっていく。

会社でOKRをやるようになったからか目標設定の意識も変わってきたなという感想。
個人的な目標なのでストレッチはあまりかけずゆるりと。

やっていくぞい。

2020年振り返り

大変な年だった。皆さん思いは同じなんじゃないでしょうか。

今年も恒例の振り返りエントリーを書こうと思います。

2020年の抱負をまずは振り返ってみたいと思います。

tkykhk.hatenablog.com

いくつか抱負を立てたのでそれぞれ振り返ってみます。

まずは何より仕事で必要とされる技術やドメインについてしっかりやっていきたい。
→自分なりにやれたんじゃないかと思っています。

お金周りのことをもっとよく知るために簿記を勉強したい。
→ここは優先順位的に下がっておりやれなかったです。やらなくてもいいんじゃないかみたいな話もチームメイトとしたりしました。

TypeScriptやっていきたい。
チュートリアルなどはやりましたがまだそこまでといった感じ。来年は実務で触ることになりそうなので今度こそやっていきます。

競プロやっていきたい。
→社の競プロクラブにもあまり参加できずでした。その競プロクラブもいったんシーズン終了ということで、ここはいったん優先度的に保留かなと思ってます。

ギター教室に通いたい。
→ギターは来年やっていきたいですね。毎年言ってる気がするけど。

台湾行きたい。
→無理ですね。早く海外旅行いけるようになるといいな。

ジム入ったのでやっていく。
→このご時世で数えるほどしか通わず退会してしまいました。頃合いを見てまた再開しようかと思っています。

こうやって振り返ってみるとけっこうやれた年なのかなという感じがします。

2020年はインプットを中心に種をまく年にしたいです。

ここはしっかり種をまけたのではないかなと。

では年間を通して振り返ってみたいと思います。

1月末突然始まったリモートワーク

何か異様なことが起こっているらしいという状況の中、僕の所属するGMOインターネットグループはいち早く1/27より在宅勤務体制へと移行しました。

www.gmo.jp

この代表の決断力、社員みんなの臨機応変な対応力、うちらじゃないとできないぜと胸を張れる強さだと思います。
1年を通してほぼ問題なく変わらず仕事をすることができました。

先輩社員の異動

入社時のメンターもしてくださった先輩社員が社内で異動となりました。一緒に担当していたサービスの開発側の主担当をしていただいていたため、今後は僕の見る領域が増えることになり、不安になりそうなところなのですが、不思議と決意は固まっていました。周りのしっかりしたサポートがあるという安心感があったからだと思います。

サービス横断体制への移行

僕たちの所属するGMOペパボ ホスティング事業部ではロリポップ!、ヘテムル、ムームードメイン、おさいぽ!という4つのサービスを主軸として展開しています。これまではそれぞれのサービスを分担して担当していたのですが、今年から各人が4つのサービスを横断して見る組織体制へと移行しました。単純に考えると見るべきサービスが4倍になる不安もありましたが、暗黙知や属人化の排除に繋がり、コミュニケーションも活発となり、チームの雰囲気が非常に良くなっているのを感じます。それが結果としてサービス自体の品質の向上に繋がるのではないかと期待しています。

引っ越し

私生活としては11月に引っ越しをしました。恥ずかしながら35年間実家暮らしを続けてきたのですが、機が熟したのを感じ、思い切って一人暮らしを始めてみることにしました。引っ越しの候補地として選んだのは大好きな大濠公園の近くの家でした。社内で流行りつつある朝散歩を毎日やっていてかなりとても最高な感じです。

https://twitter.com/tommy6073/status/1336466205025046534

年末総会

去年の無人島で脱出ゲームをやった最高な社員旅行が今年はないという残念な気持ちで仕事納めを迎えました…が。

hr.pepabo.com

結果として趣向を凝らしたオンライン年末総会を開催していただき一年間を気持ちよく納めることができました。取締役の全員集合のあと最後は恒例のWOW WAR TONIGHTで締め。

とても楽しさを感じつつも一抹の寂しさもあり、早くみんなに会いたいなという思いがいっそう強くなりました。

まとめ

前半けっこう苦しんだだけに、後半は持ち味を徐々に発揮できるようになってきたかなと思っています。

tkykhk.hatenablog.com

来年は丑年ということで年男: Man of the yearなので、まいた種がしっかり咲くよう、もっともっと頑張っていきたいと思います。

良いお年を!

GMOペパボに入社して1年が経ち2年目がスタートした

タイトルの通り、2019/09/01 付けでGMOペパボに入社して1年が経ちました。34歳にして初めての正社員採用でした。振り返れば短かったような長かったような何とも言えない感覚です。

いい機会なのでこれまでの振り返りとこれからの決意を書いてみます。

1年間けっこう大変でした

僕の所属しているホスティング事業部ではロリポップ、ヘテムル、ムームードメイン、おさいぽといった歴史の長いサービス *1 を扱っているだけに、蓄積されたドメイン、技術の知識は両方ともかなりの幅・深さがあります。また、前職のキャッチアップでは baserCMS とそれを利用した開発・運用を業務としていましたが、ホスティング事業部ではアプリケーションから1つレイヤーを下ったインフラレイヤーまで見る必要もあります。インフラ専門のエンジニアチーム *2 が存在してはいますが、境界が割と曖昧で、どこまで知っていなきゃいけないのか、ということについてけっこう悩みました *3

そんな難易度の高い業務を前になかなかバリューを出せている実感を持てずに働いていました。毎日、自分の無力さと向き合っているような状態でした。

ただ、評価においてはレビュワーから「もっと点数を上げてもいいのでは?」と指摘され最初の自己評価より高い点数で評価が通ったり、業務を通じて折に触れて周りの方々からお褒めの言葉をいただいたりしてました *4。これは周りからの評価と自分での評価のギャップに苦しむいわゆるインポスター症候群に陥ってしまったのかもしれません *5。働きやすい環境と頼れる仲間を持ちながら、自分の中で苦しんでどうにもならない状態を過ごしていました。

スランプを抜け出せたきっかけ

そんな中、自分ではどう解決すべきか分からず、どうしたものかと思い悩んでしまうタスクに直面しました。どうにもならなくなり、チームリーダーの @genkiroid に相談したところ、自分では考えなかったアプローチでの解法を提案していただきました。提案に乗って実装を進めてみると、あっさり問題を解決できそうなプログラムを組むことができました。「なんだ、人に頼ると難しいこともすぐ解決することがあるのだな」と再認識した瞬間でした。

幸いペパボには困ったら頼ることのできる環境が整っているので、自分でどうしようもない時は人に頼る、ということをやっていかなくてはと思いました。この辺りの、仕事は一人でやるものではないという考えは @pyama86 に改めて教えていただいたのが行動に繋がりました。

また、きっかけとなった出来事はあったものの、定期的な1on1においてチームリーダーの @genkiroid とマネージャーの @akrmiya には自分の苦境についての正直な相談に何度も乗っていただけました。非常に感謝しています。

これから

これからも壁にぶち当たることはあると思いますし、自分への自信の無さは性格的なものがあるので経験や成功体験を培って補っていくしかないと思っています。そのためにも幅の広いホスティング事業部の業務の中で、まずはどこを主戦場にするかターゲットを決めようと思いました。何か得意領域を持つことにより、色んな技術を吸収するうえで応用力がつくのではと考えたからです。

考えた結果、Web アプリケーションエンジニアとして入社したので、やはりアプリケーションレイヤーをひとまず主戦場にしようと決めました。その中でも業務で一番触れることの多い Ruby on Rails (と Ruby)を攻めてみようと思っています *6。事業部としては TypeScript を推し進めているので、Ruby on Rails に自信がついたらそちらへも舵を切りたいと思っています。

まとめ

苦しんだ1年でしたが、2年目のスタートをいい状態で迎えることができました。Perfume の15 & 20周年企画を存分に楽しむことができていて最高です。2年目は1年目以上に最高の年にしたいと気分が高まっています。時には人に頼りながら、成長を毎日重ねていきたいと思っています。

あ、GMOペパボはリモートネイティブを打ち出したことにより勤務地を選ばなくなったので、興味ある方は是非GMOペパボホスティング事業部で僕と一緒に働きましょう!

recruit.pepabo.com

*1:ロリポップを例にとると2001年11月11日サービス開始とのことなのでもうすぐ20周年!

*2:頼もしくてお世話になりまくってます

*3:この件については SEL (シニアエンジニアリングリード) の @linyows の「全部を知る必要はないですよ」という言葉が気持ちを楽にしてくれました。

*4:褒め合う文化があるのはペパボの強みだと思います

*5:自分でそう言っちゃうと実は自分で評価してるじゃんっていう面はありますが。

*6:ちょうどパーフェクトRuby on Railsの改訂版が出版されたりしてタイミングも良さそうと思いました。

競技プログラミング、広く言うとコーディングチャレンジとの付き合い方について考えた

最近、僕の所属しているGMOペパボ競技プログラミング部に参加するようになったことをきっかけに競技プログラミングにハマっています。

tech.pepabo.com

毎週お昼のランチの時間を使ってみんなでワイワイ問題を解いたり、時には業務時間後に「P社の放課後」として活動することもあります。
競技とはいってもみんなで競い合う、という雰囲気ではなく、解けなかった問題について議論したり、こういう書き方もあるよーとアドバイスしあったり、本当にいい雰囲気のクラブ活動となっています。

競技プログラミングと自分

自分自身は学生の時から競技プログラミングには興味があって、ブログとしては5年ほど前に以下のような記事を書いたりもしていました。

tkykhk.hatenablog.com

なぜ競技プログラミングをやるのかというと、やはりデータ構造とアルゴリズムをしっかりやってた方が強いよね、という考えがずっとあるからです。

それに加えて、AtCoderなどのサービスではレーティングがついてランクによって色分けされたりと、上を目指すとまるでネットゲームのような中毒性があります。

そんなこんなで競技プログラミングやっていくぞーとなっていたのですが、入社まだ半年で業務を通してなかなか思ったようにバリューを出せないでいる中、身につけるべきことがたくさんあり、ちょっと優先順位考えねばならぬなと思い始めました。
やりたいことがたくさんあっても時間は有限なので、やることを選択する必要があるなと考えさせられたのです。

ハマり始めた頃はAtCoderの水色コーダーを目指そうかとも考えましたが、下のような記事を読んで覚えることの余りの多さに「ウッ」となってしまうような状況なので、生半可な取り組み方じゃ難しそうだなとも気づかされました。

qiita.com

職業プログラマーな以上、やはり一番は仕事においてバリューを出すことなので、いったん競技プログラミングについてはたしなむ程度にとどめようと思いました。

でも問題解くのは楽しいし役に立つ

ただ、問題を解いて他の人の解答も見ながら言語を覚える*1というのはとても楽しく、かついい体験なので、何かしらコーディングチャレンジは継続していきたいなと思っています。
AtCoder ABCのC、D問題を安定して解く、ぐらいならそこまで時間を投資せずともこなせそうな気がするので、それを第一にやっていこうと考えています。
また、コーディングチャレンジサイトはAtCoderの他にLeetCodeCodewarsExercismなど色々ありますが、迷った結果、LeetCodeの問題は見た感じアルゴリズムとデータ構造をきちんとやることが求められそうなので、そこは将来余裕が生まれた時にしっかりやっていくことにし、当面はカジュアルな知識でも解けていけそうなCodewarsをやっていくことにしました。

まとめ

競技プログラミングについては会社のクラブ活動をメインとし、気が向いた時にAtCoder ABCに参加して茶色コーダーを目指しつつ、Codewarsも余裕がある時にやっていく。
そんな方針でいきたいと思っています。

*1:今はRubyを勉強中です

未来を担うプログラマーになるために―『The Pragmatic Programmer, 20th Anniversary Edition』を読んだ

本『達人プログラマー』の20周年版『The Pragmatic Programmer, 20th Anniversary Edition』(未訳)を読み終えたので読後記事を書いておきます。

本について

本書はソフトウェア開発コミュニティをリードするDavid Thomas, Andrew Huntによる共著で、初版の『The Pragmatic Programmer』(訳書名は『達人プログラマー』)は長くプログラマー必携の書として愛されてきました。本書は1999年に初版が発売されて以来初めてのアップデートとなる20周年記念版です。購入は著者自身が運営するThe Pragmatic Bookshelfにて可能です。

pragprog.com

僕自身も旧版を読んでかなりの影響を受けた本で、技術書を1ヶ月に1冊読む毎年少なくとも一つの言語を学習する、といった習慣はこの本を読んで開始したものです。 DRYといった言葉を広めたのもこの本でした。

53のトピックのうち1/3ものトピックが新しいものとなっており、既存のトピックも含め、かなりの改変が加えられています。ソフトウェア開発の世界で20年といったら相当な期間なため、それだけのアップデートが必要となることもうなずけます。

トピックは哲学から始まり、コーディングに関することや、ツールやプロジェクトの進め方や、並行性に関するものなど、広範囲に渡っています。

感想

Juggling the Real World トピックなど、 有限状態マシンといったコンピュータ・サイエンス的な要素も持ったトピックが増えており、大変楽しく読めました。Transforming Programming トピックではElixirといった著者が得意とする最新の言語も利用しつつ、パイプラインなどのモダンな手法について触れられており興味深かったです。Test to Code トピックの「テストは実行する時ではなく、考えたり書いたりする時に恩恵をもたらす」といった言葉にはハッとさせられました。

また、トピックの始まりの名言の引用など、テクノロジー以外の分野からの参照も多く示唆に富んでおり、説得力を持って響いてきました*1

対象読者

個人的には旧版を読んだのはまだ実務経験が浅かったころだったため理解が追いつかなかったこともありましたが、今回は具体的なイメージをしながら読めたため前回読んだ時より身になった感が強かったです。

そのことから、ある程度経験を積んだ上で読んだほうがいいかもしれないと思いました。Hacker News などのコメントを見ていると自明なことばかり書かれていてあまり得るものがなかった、という人も中にはいるようなので、ベテランというよりは初〜中級者が読むとより効果が高いのかな、と思います。

後書きに身が引き締まった

最後を締める後書きでは、「我々開発者は非常に特権的な立場にあり、文字通り未来を作っており、強力なパワーを持つ。そしてそれはとてつもない責任を伴う」と述べています*2。この言葉に改めて身が引き締まりました。

まとめ

20年ぶりの刷新となりますが、逆に言えばそれだけの間更新されなくても特定の言語やツールに囚われない普遍的な力を持った本だったということだと思います。

今回の20周年版も、広範囲に渡る53のトピックがこれからの20年を良いプログラマーとして過ごすために必要な知識や慣習を支えるものとして手助けしてくれそうです。

未来を担う責任を持つプログラマーの一員として、細部にこだわりながら*3これからも励んでいきたいと思いました。

pragprog.com

リンク

*1:著者のAndrew Huntによる『リファクタリング・ウェットウェア』も考え方を科学的に改める機会となるものとしてお勧めです

*2:"With great power comes great responsibility" ってやつですね

*3:著者は良いプログラマーになるためには実際のところ paranoid になる必要があると述べています

2020年抱負

サクッと。

  • まずは何より仕事で必要とされる技術やドメインについてしっかりやっていきたい。
  • お金周りのことをもっとよく知るために簿記を勉強したい。
  • TypeScriptやっていきたい。
  • 競プロやっていきたい。
  • ギター教室に通いたい。
  • 台湾行きたい。
  • ジム入ったのでやっていく。

2020年はインプットを中心に種をまく年にしたいです。

今年もどうぞよろしくお願いいたします。