タグ

ブックマーク / blog.shibayu36.org (11)

  • スムーズに進行するためのエンジニアリングタスク分割の工夫 - $shibayu36->blog;

    会社の振り返りで「エンジニアリングの作業タスクがうまく分割できていそうだったが、その知見を共有してほしい」と言われたので、自分がどう考えてタスク分割をしているかをこの記事で共有したい。 この記事のスコープとすること・しないこと タスク分割をするときの工夫点 少なくとも1スプリント以内で終わるタスクになっている 完了条件が明確である 開始から終了まで他タスクによる待ち時間がない 他タスクが待ち状態になる時間を最小限にする 自分にとって難易度の高いものが1タスクの中で1つである 初めから完璧なタスク分割を目指さない 工夫を考慮した分割例 まとめ この記事のスコープとすること・しないこと 今回の記事では、あるユーザーストーリーが存在するとして、その設計・実装・テストなどをスムーズに進行するための工夫について書く。 逆に次のようなタスク分割については取り扱わない。 ユーザーに提供すべき価値があると

    スムーズに進行するためのエンジニアリングタスク分割の工夫 - $shibayu36->blog;
  • MySQL即効クエリチューニング読んだ - $shibayu36->blog;

    MySQL即効クエリチューニング ThinkIT Books 作者:yoku0825インプレスAmazon 最近クエリチューニングの仕事があったので、少し深めに知ろうと読んだ。 MySQLの内部構造がどうなっているかは置いておいて、どうすればクエリの問題を把握できるかが素早く知れる良いだった。90ページくらいですぐ読めるのも良い。個人的にはHandler_%変数を使った調査、innotopによる状況可視化、sys.innodb_lock_waitsによるロック状況の可視化あたりが非常に参考になった。 ちなみにさらに内部構造に踏み込んで理解しようとするなら、以下の記事がおすすめ。 雑なMySQLパフォーマンスチューニング MySQL with InnoDB のインデックスの基礎知識とありがちな間違い - クックパッド開発者ブログ Rails Developers Meetup 2018 で

    MySQL即効クエリチューニング読んだ - $shibayu36->blog;
  • クラスター株式会社に入社しました - $shibayu36->blog;

    2023/07/01よりクラスター株式会社に入社しました。 corp.cluster.mu 今回もいくつかオファーをもらったが、次の理由からクラスター株式会社へ決めた。 とにかくクリエイターを応援したい 社内にもクリエイター気質の人が多そうだ リアルタイム通信サーバーなど、裏側のシステムにワクワクする VR自体が子供の教育を改善しうる とにかくクリエイターを応援したい 転職活動の際にいろんな転職軸を言語化していたのだが、結局のところ自分がどうしても貢献したいプロダクトでなければモチベーションを保てないと感じた。もう一度これまでの仕事を振り返った時、自分は「漫画家・小説家・ブロガーなどのクリエイターが、自分の作ったプロダクトによって報われた時」に非常に嬉しく感じる1ことに気づいた。 クラスター株式会社は現在clusterというメタバースプラットフォームを作っているが、単純にメタバースプラット

    クラスター株式会社に入社しました - $shibayu36->blog;
    kwy
    kwy 2023/07/03
  • コード変更で抜け漏れやミスを少なくするための習慣 - $shibayu36->blog;

    自分はこれまでの仕事で、バグ修正や機能追加でPullRequestを送るときに、考慮の抜けもれやケアレスミスが非常に少ない方であると思っている。振り返ってみて、これは自分に課している習慣が大いに効いていると思っているので、メモしておく。 毎回のcommit時 必要な部分だけをgit addし、git diff --cachedによって差分をセルフコードレビューした上でcommitする PullRequest作成時 filesの内容をセルフコードレビューし、直した方が良い部分は直す + わかりにくい部分にGitHub上でラインコメントを行う + コード上にコメントを残した方がいいならコメントする ユーザーの導線に影響するコードなら、必ず自動テストだけでなく、自分自身でユーザーの行動をトレースし、違和感がある部分が存在しないかチェックする。チェックした流れについては、PullRequest上に

    コード変更で抜け漏れやミスを少なくするための習慣 - $shibayu36->blog;
  • メンターを初めて経験する人に、最初に読むものとしてオススメしている書籍たち - $shibayu36->blog;

    社内ではこういうおすすめをしてますね(文字数多いのでスクショで...) pic.twitter.com/uzqCh6zubs— 柴崎優季 (@shiba_yu36) 2020年7月7日 こういうツイートして、そういえば社内でメンターを初めて経験する人にオススメしている書籍たちを外部に公開してないなと思ったので紹介してみます。 メンタリングのスキルを学習する時のキーワードは「コーチング」と考えていて、以下の書籍を推薦しています。上から順におすすめ順になっています。この推薦は網羅的にコーチングを学べると言うより、初めての人でもとっつきやすく読みやすいものであることを意識して選んでいます。また、メンタリングを始めるだけなら、書籍の全部分を読む必要はなく、どこまで読んでおくと良いかも書いています。 エンジニアリング組織論への招待 ザ・コーチ コーチングの基 新1分間マネジャー エンジニアリング組

    メンターを初めて経験する人に、最初に読むものとしてオススメしている書籍たち - $shibayu36->blog;
  • エンジニアと1on1をするときの事前面談シートテンプレート - $shibayu36->blog;

    はてなのチーム横断のエンジニアメンター制度 - Hatena Developer Blog で紹介していますが、はてなにはチーム横断のエンジニアメンター制度があります。僕も最近までメンターとして5~6人ほどのメンティーを持っていました(今は事情があってメンターをやっていないのですが)。 メンターとして1on1をする時には1on1ミーティングに備えるアンケート - しるろぐを参考にし、事前にメンティーに面談シートを書いてきてもらうという工夫をしていました。その面談シートは改善を少しずつ加えながら運用していたのですが、一度知見共有も兼ねて最近使っていた面談シートテンプレートを公開してみようと思います。 面談シートテンプレート 以下のようなフォーマットで書いてもらっています。1on1の前にメンティーに1on1Google Docsに追記していってもらっています。1on1Google Docs

    エンジニアと1on1をするときの事前面談シートテンプレート - $shibayu36->blog;
  • 「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;

    最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。 ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 作者:青木 峰郎SBクリエイティブAmazon このLinuxにおいてC言語でプログラミングする方法を、Linuxでの重要な概念も含めて教えてくれる。このを読めばとりあえずC言語を使ってLinux用のプログラムを書き始めることが出来るようになりそうだった。 それでC言語を使わない場合でも役に立つの?ということだけど、非常に役立ちそうで面白かった。なぜなら、単なるプログラミングの方法を教えてくれるだけではなくて、 Linuxの重要な考え方をファイルシステム・プロセス・ストリームという概念にまとめて教えてくれ

    「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;
    kwy
    kwy 2017/11/13
  • いつ突然会社をやめても問題ないという基準でコードやドキュメントを書くテクニック - $shibayu36->blog;

    blog.shibayu36.org 上の記事が思ったより読まれていたので、自分がこの基準を満たせるようにやっているテクニックも箇条書きで書いておく。 PullRequestを作ったら必ず自分でコードレビューをする コードを書いているとき、その一部一部はこれで完璧と思ってるけど、実は全体を見直すと分かりにくかったりする 1日寝てから見直す 1日経つとちょっと忘れて新鮮な気持ちで見れる 1週間後にもう一回見てみる 1週間くらい経つともうだいぶ忘れて、穴が見えてくる 穴があったら別PullRequestで直す もう一度同じところを担当することがあればチャンス。自分でもこれどういうことだっけってググり始めたら基準を満たせていない 自分が全く関わっていない部分のところを触りだしたらかなりチャンス。当にまっさらな頭で基準を満たすか見れる。他人がやったことだからとか思わずにちゃんとその時に直す やっ

    いつ突然会社をやめても問題ないという基準でコードやドキュメントを書くテクニック - $shibayu36->blog;
  • いつ突然会社をやめても問題ないという基準でコードやドキュメントを書く - $shibayu36->blog;

    先に前提を話しておくと、会社は全く辞めるつもりはないし、むしろどんどん会社を良くしていこうと思っている。今回はそういう基準で自分がコードやドキュメントを書いていますよという話。 コードやドキュメントを書く時に、どのくらいきれいにしておくかとか、どのくらいわかりやすくしておくかとかを考えることがある。こんなとき僕は、いつ突然自分が会社をやめて連絡がつかなくなったとしても他の人がある程度理解できるか、を基準にしている。そのためにはあまりいい方法が思いつかなくて仕方なく書いている部分にはちゃんと経緯のコメントを書く。他にも例えば作ったサービスであるイベントを開催する方法のドキュメントを書くなら、全く何もやったことがない人がそのドキュメントを読んだらとりあえず開催できるよう、ドキュメントを書く。当然コードもかっこよさよりも、説明しなくても分かりやすくなるようなシンプルさを追求する。 また、このよう

    いつ突然会社をやめても問題ないという基準でコードやドキュメントを書く - $shibayu36->blog;
  • 暗号技術の要点を学ぶ - 「暗号技術入門」を読んだ - $shibayu36->blog;

    最近SSLやユーザアカウント管理の安全性とかに興味があって、その要素技術である暗号技術に興味が湧いてきたので、最近新板が出た「暗号技術入門」を読んだ。 暗号技術入門 第3版 秘密の国のアリス 作者:結城 浩SBクリエイティブAmazon このは、暗号学者がよく使う仕組群(このでは暗号学者の道具箱と呼称)である、対称暗号、公開鍵暗号、一方向ハッシュ関数、メッセージ認証コード、デジタル署名、擬似乱数生成器について、仕組みを順に解説してくれる。また、ただ解説してくれるだけではなくて、その仕組みによって解決できる問題と解決できない問題を明示し、では解決できない問題を解決するにはどうするかというふうに章が進んでいくので、暗号技術を分かりやすく学んでいくことが出来る。 暗号技術というと数学的で非常に難しい印象があるけど、著者である結城さんが単純化して説明してくれているおかげで数学的知識がなくとも分

    暗号技術の要点を学ぶ - 「暗号技術入門」を読んだ - $shibayu36->blog;
  • vagrantで使ったコマンド - $shibayu36->blog;

    最近vagrantを使ってみてるのだけど、いくつか使ったコマンドがあったので、メモがてらブログに書いてみる。 vagrant init vagrant initでそのディレクトリにおけるvagrantを設定できる。具体的に言うとそのディレクトリ以下にVagrantfileというものが出来る。例えば以下のように使う。 $ vagrant init vagrant box vagrant boxはどこかのURLにあるboxファイルを名前付きで手元に持ってくるもの。vagrant box addつかえば持ってこれるし、vagrant box listを使えば手元に何があるか分かる。あとはremoveとかrepackageとかある。 boxをlocalに持ってきておけばいろいろなprojectで毎回boxファイルをdownloadせずに同じ物を使うことが出来るので便利。 $ vagrant box

    vagrantで使ったコマンド - $shibayu36->blog;
    kwy
    kwy 2013/03/23
  • 1