技術系
技術的負債と立ち向かう前に知っておいてもいいこと
技術的負債の考え方についての記事です
特に可視化が重要というのは、エンジニアリングに明るくない人たちに説明するうえでもとても重要なことだと思います
また自分たちエンジニアにとっても、現状の立ち位置と、ちゃんと進めていることがわかるというのは重要なのではと感じました
そして日々少しずつでも返済していけるような組織としての仕組みづくりをしていかなければ、永遠に返済されない状況になりますので
そうならないように開発部として取り組んでいきましょう!
少し長めの記事ですが、様々な視点で向き合い方が載っているので、ぜひ一度目を通してみてください!
テストが書きやすいコードを書く
テストが書きやすいコードはどういったものかを記載した記事です
テストのしやすさは、勉強会の内容である「良いコード/悪いコードで学ぶ設計入門」の内容と被る内容が多いように思います
Class レベルで責務の分離をするということは、Method 単位で責任だけ分離した Private Method が減ることに繋がり、本当にテストするべき内容がテストしやすくなります
その結果、実際にテストコードを作成しなくても、可読性や安全性が向上したコードが作成できると思います。
そのためテストを(書いたほうが良いのは当然ですが)書かない選択をした場合でも、Testable なコードとする方が良いと思い共有いたします!
Linuxカーネルについての自分用メモ
Linuxカーネルについて簡単にまとめられている記事です
内部で分割されているので、少しずつ読みやすく、分割単位毎にまとめもあるので理解が容易になっています!
PCがどのようにして動いているのか、プロセス間通信やロックをどのように実現しているのかといった、普段意識しないけど重要なことが書いてあるのでお時間がある時に是非目を通してみてください!
マネジメント系
感情に流されるのではなく、活かす技術
感情との向き合い方に関する記事です
この記事ではメンターなどの導く立場の人の悩みとして語られていますが、どのような立場であっても感情が動くことはたくさんあると思います
そういった時に、その感情とどのように向き合い、成長に繋げれことができるかの参考になるかと思い、共有いたします!
その他
Findy Team+の「チーム目標設定」で生産性をブーストしてみる
開発生産性を高めるためにFindy Team+を導入して取り組んだ記事です
やはり開発していく中でレビューはかなり負担に思うところです
規模が大きくなればなるほど、レビューも大雑把なものとなってしまうので、この小さく何個もPRを作って、サイクルを早く回すことめしっかりしたレビューができることと、レビュー自体の心理的負担は減りそうだと思いました
そのため、自分たちは計測しているわけではありませんが、この小さなPRというのを意識しながら取り組めると良いなと思います!
共有するほどではないけど興味があったもので読んだもの
-
"コンポジション"を知らなかったので軽く調べてみた #オブジェクト指向
- has-a 関係にして、Method 内部で移譲したインスタンスのメソッドを呼ぶこと
-
思考のベクトルを変えれば、1on1はもっと効果的になる
- 自分ではなく相手にベクトルを向けるのが最も大切だろうと思う
- とにかく傾聴からかなと思った
-
プロダクト開発を円滑に進めるためのコミュニケーション術
- よく言われる「結論を先に」「自分の意見を添えて」という部分は本当に大事なことなんだと改めて実感
- 返事がすぐに貰えると嬉しいが、自分が返す側のときは、自分の作業が落ち着くまで待ってほしい気持ちにはなるw
- リアクションで見たよアピールは個人的には結構良いと思っている
-
優秀なエンジニアは何が違う?
- プログラマー脳は気になる
-
モブプロをやめた理由
- はじめはモブプロやるというのは効果的かもしれない。その後状況に合わせて取捨選択できると良さそう
-
価値創造を加速させるための革新! リリースフローをGitHubに完結&仕組み化して劇的な効率化へ!
- 自動化できるところは自動化したいよね
-
コードレビュー時に"しないこと"3選
- そのチームでのコードレビューに何を求められているかにもよりそう
-
低レイヤー技術を教えるにあたって Part 2: コンパイラ・インタプリタの実装
- 言語作るの面白そう
-
初心者エンジニアに最初に読んでほしい工数見積もりの話
- 精度の高い見積もりをするためにはそれなりの時間がかかる。その時間の確保ができるなら見積もりをある程度信頼しても良いと思うが、時間は取れないのに見積もり精度だけを求めることはできないと思う
-
一度は触れてほしい、ターミナルが美しいと思えるツール5選+α
- 試してみる
-
なぜPHPファイルは <?php が省略できないのか
- PHP4や5を知る世代にとってはそうだよなって感想
- 一応案が出ていたが棄却されているということは知らなかった
-
俺が考える最強のITエンジニアキャリア戦略
- EMかテックリードの路線で考えたい
- どのキャリアでも上位職になるとエンジニア以外とのコミュニケーション能力が求められそう
-
開発チームのメンバーに今年の目標・抱負を聞いてみました
- 皆の業務目標以外の目標や抱負を聞いてみるのは面白そう
-
なぜテストをするのか?テストの質を向上させるためのポイント
- 何故必要なのかの部分が簡単にまとまっている
-
Qiitaの自己紹介欄に何書く? というポエム
- 結論が空欄www
-
Linux 概要 - Linuxと他のUNIX系カーネル
- カーネルの概要
-
Linux概要 - オペレーティングシステムの基本概念(1)
- OSの概要とマルチユーザシステムについて
-
Linux概要 - オペレーティングシステムの基本概念(2)
- ユーザと権限について、マルチプロセスとスケジューラについて
-
Linux概要 - オペレーティングシステムの基本概念(3)
- マイクロカーネルについて、カーネルモジュールについて
-
Linux概要 - UNIXファイルシステムの概要(1)
- ファイルとハードリンク・ソフトリンクついて
-
Linux概要 - UNIXファイルシステムの概要(2)
- ファイルディスクリプタとiノードについて、アクセス権と特殊フラグについて
-
Linux概要 - UNIXファイルシステムの概要(3)
- ファイル操作のシステムコールについて
-
Linux概要 - UNIXカーネルの概要(1)
- カーネルモード・ユーザーモードについて、システムコールについて
-
Linux概要 - UNIXカーネルの概要(2)
- プロセスとレジスタについて
-
Linux概要 - UNIXカーネルの概要(3)
- 再入可能なことでのメリットについて
-
Linux概要 - UNIXカーネルの概要(4)
- プロセス間通信、共有メモリとメモリマッピングについて
-
Linux概要 - UNIXカーネルの概要(5)
- クリティカル区間と同期機構について
-
Linux概要 - UNIXカーネルの概要(6)
- デッドロックとその対策について