ブックマーク / medium.com (501)

  • PdM/EMが気づくべき「技術負債」の異変

    技術負債が溜まっている勘所について。現場のエンジニアは実際のシステムを触っているので変更や追加をする過程で当事者になるのでおおよそ異変に気づく。 一方、実際にそのシステムに対となるプロダクトに関わっているのはエンジニアだけではない。PdMEM、事業責任者がいる中でこのメンバーにどう常に変化し続けるシステムアーキテクチャの異変に気づいてもらうのか、自ら気づかせるのかは至難の業である。 とはいえ、つばり一番わかり易いのは工数の予測精度の幅がある。 以下の3つのフェーズがあったときにそれぞれのズレが大きい場合は負債が溜まっていることが多い。(特に、1.と3.) 一般的な視点と現場システムへの理解度のズレ詳細から開発手前での予測のズレ予測工数と実績工数のズレここでいう工数予測がズレるのはエンジニアリングスキルの問題ではなく、システムに関する理解度の認知問題によってズレるケースが該当する 1.一般

    PdM/EMが気づくべき「技術負債」の異変
  • Misskey.ioとのスポンサー契約締結と仕様変更のお知らせ

    いつもSkebをご利用いただきありがとうございます。 Skebではこの度、分散マイクロブログSNSMisskey.io」を運営する株式会社MisskeyHQとスポンサー契約を締結しました。 Misskey.ioは、オープンソースの分散SNSプロジェクトMisskey」の世界最大のインスタンスです。 2019年に個人運営から始まったMisskey.ioは、2023年にMisskeyの開発者である「しゅいろ」氏をメンバーに加えて株式会社MisskeyHQとして法人化しました。 日の法人が日国内のサーバで運営していることから、クリエイターが安心して利用することができるSNSとして注目されており、2024年2月現在、総登録者数は45万人を超えています。 昨今、海外の大手SNSの方針転換により日のクリエイターを中心にSNSアカウントの凍結が相次いでいます。 Skebでは、クリエイター支援の

    Misskey.ioとのスポンサー契約締結と仕様変更のお知らせ
  • Reduce, recycle, reuse

    To enable a fast and reliable continuous integration process, McDonald’s turns to reusable workflows and GitHub Actions. By Michael Gorelik, Senior Solution Architect and Achintya Pillai, Software Engineer III McDonald’s Engineering teams are at the forefront of digital innovation, creating seamless and engaging e-commerce applications that allow customers to conveniently order their favorite meal

    Reduce, recycle, reuse
  • Rustがサポートするアーキテクチャ少なすぎる!

    RustLinuxカーネルモジュールを実装しよう!」とはしゃいできましたが、実は、X86-64とLoongArchという2つのCPUアーキテクチャしかサポートされていません。近いうちに、ARM64もサポートされそうですが、Linuxカーネルがサポートする大半のアーキテクチャで、Rustは使えません。 Linuxカーネルの標準コンパイラのGCCは、CのソースコードをLinuxカーネルがサポートする様々なCPUアーキテクチャ用の実行ファイルに変換することができます。一方、Rustの公式コンパイラがサポートを保証しているCPUアーキテクチャはARM64とX86、X86–64だけです。 Rustの公式コンパイラがサポートしているアーキテクチャが少なすぎるということで、別のコンパイラを試してみました。 Rustの公式コンパイラRustの公式コンパイラは、コンパイラを実装するための基盤的なソフトウ

    Rustがサポートするアーキテクチャ少なすぎる!
  • Rustで作るLinuxデバイスドライバ

    だれでもできるシリーズとして、Rustでカーネルモジュールを実装しながら学んできましたが(役に立たないキャラクタデバイスドライバなど)、そろそろ実際に使える機能を実装したいころですよね! 今回は、筆者が実装したネットワークPHYドライバが、Rustで実装された初めてのデバイスドライバとしてLinuxカーネルに採用された話を紹介します。 誤解:LinuxカーネルがRustをサポート「LinuxカーネルがRustをサポートした」というニュースを見て、Rustのコードがどんどん採用されていると誤解している方もいるようです。このニュースは、「LinuxカーネルをRustでも書けるようになりましたが、実際に何かを実装するかどうかは未定」という意味です。Linuxカーネルは、メモリマネージメント、ネットワーク、暗号など、数多くのサブシステムで構成されており、それぞれのメンテナが、コードの採否を判断しま

    Rustで作るLinuxデバイスドライバ
  • 2024年版 キーボードのカスタマイズガイド

    以前は究極の一台を追い求めて迷走してしまっていたのですが、今では各々のキーボードの魅力を活かしつつ、自分好みにカスタマイズすることで、お気に入りのキーボードに仕上げられるようになってきました。 ポイントは2つ。 ・自分の好みを把握(=いろいろ試す) ・打鍵感には、スイッチだけでなく、筐体と内部のフォーム、さらには机やマットの組み合わせが効くことを理解する 自分の好みをキースイッチを把握する点に関しては、2023年現在では比較的簡単になってきました。Keychronなど、ホットスワップ対応のメカニカルキーボードが普及してきたことで、半田付けせずにスイッチを交換したり、2023年にはRazer Blackwidow V4、HHKB Studioなど、老舗キーボードメーカーからもホットスワップに対応した製品が登場したのが記憶に新しいです。 それに伴い、キースイッチもネット上でのレビューが追いつか

    2024年版 キーボードのカスタマイズガイド
  • エンジニアリングマネージャーになって1年がたった

    私は,あるスタートアップ企業でエンジニアリングマネージャー(の,1人)をしている。toB向けSaaSを提供している数百名規模の会社で,社名が少しずつ世の中に知られるようになってきたくらいのフェーズ。会社からはDirectorという肩書をもらっていて,トラディショナルな日企業だといわゆる部門長の層にあたる。中間管理職の中では上のほうで,執行役員の下あたり,というと伝わりやすいだろうか。 様々な事情(会社が大きくなった,比較的社歴が長い,そこそこの業界経験値がある,自分の専門領域(*1)に社内のフォーカスがあたるようになり,チームをスケールする必要が出てきた,etc.)から,半ば必要にかられて,重い腰を上げてエンジニアリングマネージャーとして活動を始めたのがちょうど1年ほど前。 決してマネージャーとして早咲きのほうではなく,IT業界でのキャリアは15年くらいで,これまではずっとプレイヤー,ま

  • Why Japanese Websites Look So Different

    & how to analyze design choices without jumping to conclusions Over the years, I have had many encounters with Japanese websites — be it researching visa requirements, planning trips, or simply ordering something online. And it took me a loooong while to get used to the walls of text, lavish use of bright colors & 10+ different fonts that sites like this one throw in your face: Hankoya — a website

    Why Japanese Websites Look So Different
  • 「Redis 実践入門」を執筆しました

    この度、「Redis 実践入門」を発売します(https://amzn.asia/d/fGlUHb7 )。このブログは告知のために書きました。 筆者がどういった考えで執筆し、どういった内容を扱っているかについて取り上げます。 書を執筆した動機私がRedisと関わり始めた当時、Redisに関する日語書籍は書店にあったものの、仕事を十分にできると感じられる書籍と出会うことが出来ませんでした。 周りのエンジニアからも同じ話を聞くことが多々ありました。 NoSQL関連全般に関する技術雑誌の中でRedisについて取り上げられていることは多くありますが、基的には書籍全体の一部として扱われていたり、絶版でバージョンが古く現在のRedisとは状況がかなり変わっています。 また、日々Redisは急速に進化しており、それらに追随して新しいバージョンのものについて言及した書籍というものもありませんでし

    「Redis 実践入門」を執筆しました
  • Linuxカーネルが難しい?Rustで実装できそう!

    「ついに、RustLinuxカーネルを実装できる!」 待ち望んだ感を出してみましたが、2年前に記事を書いてから、すっかり忘れていました。LinuxカーネルのRustサポートについての意見を求められたら、「技術的には面白いけど、実用レベルではないね。」と、上から目線の回答でエンジニアレベルの高さをアピールするつもりでしたが、2年間の間、誰にも聞かれませんでした。 近々、LinuxカーネルにRustサポートが取り込まれそう、ということで、デバイスドライバを実装してみました。 Rust対応カーネルのコンパイルまずは、Rust対応を有効にしたLinuxカーネルをコンパイルする必要があります。「カーネルってコンパイルするものなの?」という読者は、ネットの長老たちに叡智を求めましょう。「インストール直後に、メモリ削減のために不要な機能を無効にして、カーネルコンパイルしたんじゃ。」というような、太古の

    Linuxカーネルが難しい?Rustで実装できそう!
  • Dockerからcontainerdへの移行

    https://speakerdeck.com/ktock/dockerkaracontainerdhefalseyi-xing背景: Kubernetes 1.24は組み込み機能としてのDocker対応を打ち切る2014年に公開された初期のKubernetesDockerにのみ対応していましたが、2016年のKubernetes 1.5では Container Runtime Interface (CRI) と呼ばれる共通インターフェースが導入され、 CRIに対応した任意のランタイムが利用可能になりました。以来、様々なランタイムが開発されてきましたが、2022年現在では containerd と CRI-O の 2つが主流です。 CRIが導入されてからも、Kubernetesに組み込まれているDocker対応機能(dockershim)が広く使われていましたが、2022年4月リリース予

    Dockerからcontainerdへの移行
  • インターンレポート: RootlessコンテナのTCP/IP高速化

    はじめまして、インターン生の松直樹と申します。 この記事では、私がNTT研究所におけるインターン「コンテナランタイムの実装と評価」のインターン期間中に取り組んだ「bypass4netns」について紹介させていただきます。 自己紹介私は京都大学 情報学研究科に所属し、 普段は次世代型ホームネットワークと称してホームネットワークとSDNの融合や計算処理オフロードに関する研究に取り組んでいます。 コンテナ技術やその周辺のネットワーク技術に関しては普段から興味があったものの、 時間をかけて取り組む機会がありませんでした。 その折に、今回のインターンの募集を見つけ、実装を中心に触れることができる良い機会だと思い応募させていただきました。 インターン期間中はRootlessコンテナとネットワーク周りにどっぷりと浸ることができ、 非常に貴重な体験ができました。 はじめに: Rootless コンテナに

    インターンレポート: RootlessコンテナのTCP/IP高速化
  • インターンレポート: コンテナランタイムの実装と評価

    こんにちは。インターン生の富田祐永です。普段は情報系の研究室で超伝導量子コンピュータの研究をしています。 2022年1月から約1ヶ月間、NTT 研究所で「コンテナランタイムの実装及び評価」というテーマのインターンに参加させていただいておりました。 インターン参加経緯改めて軽く自己紹介をさせていただきます。 私は今は修士1年の院生なのですが、実は学部時代は情報系ではなく経済学部にいました。また、趣味で何かやっていたというわけでもなかったため、特に低レイヤに関しての実装経験はほぼ皆無です。 院に入ってからも、研究の傍らでちまちまCのコンパイラを書くくらいしか余裕がなく、何か面白いものを集中して実装できる期間が欲しいなあと思っていました。そのため、今回のテーマの募集を見つけた瞬間「これだ!」となって即応募しました。 取り組んだテーマさて、自分が取り組んだのは「containerd-shim-ru

    インターンレポート: コンテナランタイムの実装と評価
  • Rustが遅すぎる?プロファイリングで性能向上!

    「開発プロセスにプロファイリングを組み込むのはどうだろう?」 ミーティングで、プロファイリングの重要性を発言するだけで、みんながあなたの深い知見、意識の高さに驚くことでしょう。もちろん、あなたは、プロファイリングのやり方を知っている必要はありません。開発の終盤に、性能目標が達成されず、解析が実施される頃には、誰もあなたの発言は覚えていません。しかし、万が一、あなたの意見が採用されても困らないように、この記事を参考にしてください。 Goは、CPU、メモリ、block、mutexなど、使いこなせないほどの種類をサポートするプロファイリングツールpprofを標準機能として提供します。一方、Rustは、そんな機能を提供しません。Rustへの愛が揺らぐかもしれませんが、Rustへの愛は、見返りを求めない純愛です。愛の見返りに何かが与えられると期待してはいけません。 Rustでもpprofあなたは、す

    Rustが遅すぎる?プロファイリングで性能向上!
  • これからはじめる 実践SRE / SLO の監視をやってみよう

    SRE がアツいですね。 昨年は以前に増して SRE 関連のイベントも増え、SRE 人材への注目も更に高まっていると感じた 1 年でした。私も Google Cloud の Customer Engineer として、お客様へ SRE のお話をする機会が増えてきています。 ご存知の通り、SRE は Google から生まれた運用プラクティス、またはそのロール自体を指す言葉です。 詳細は無料で読むことができる書籍を御覧ください。 “Site Reliability Engineering” 及び “The Site Reliability Workbook” (右上の右2つ)は HTML 形式 なので、Google Chrome で右クリックして 翻訳を選択するという簡単な手順で日語でも読むことができます。(書籍がよい方は日語版も購入できます。) 今回のテーマは SLO (Service

    これからはじめる 実践SRE / SLO の監視をやってみよう
  • 新人こそリファクタリングをやれ! ~マイクロサービスの最古のサービスをリファクタリングした話 ~

    こんにちは。FiNC Technologies(以下、FiNC)の サーバーサイドエンジニアをしている Ryusei (@ryusei_i_1025)です。 僕はエンジニア1年目なのですが、FiNCのマイクロサービスの最古の巨大サービスのリファクタリングをしてきました。 その内容と学びを一部ご紹介します。 FiNCでは、マイクロサービスを採用しています。 それぞれのチームがサービスのオーナーとなって、担当サービスをプロダクションレディとなるように管理しています。 大抵、マイクロサービスの中には、巨大な神サービスが存在すると思いますが、 僕が所属するチームは、2021年4月にこの最古の巨大サービスの担当になりました。 このサービスは、FiNCの歴史を物語っています。2013年に作られてから、現在までFiNCの中枢機能として、ビジネスを支えてきたサービスです。 現CEOの 南野 (@tente

    新人こそリファクタリングをやれ! ~マイクロサービスの最古のサービスをリファクタリングした話 ~
  • “テックリードという役割”のその後 — Will Larson “Staff Engineer”

    このは大きく前半と後半にわかれていて、著者によるStaff Engineerの職務内容・昇進・会社選びなどに触れた前半、”Stories”と章立てされたStripeSlack・FastlyといったTech企業で働く14人のインタビューを掲載した後半の構成になっています。私は前半を読みおえ、後半のインタビューを2人目まで読んだ状態です。 書にかかれているスタッフエンジニアの職務内容や求められるものは良い意味で私のイメージしていものとは違いました。 これまで私が想像していたのは「所属する組織が使うOSSにコントリビュートして技術的な優位性を保る」「社内のツールを開発して組織全体の生産性を上げる」のような一言で言えば凄腕のエンジニアでした。 しかし、書で紹介されるスタッフクラス以上の職務を自分なりにまとめると「チーム間・全社的な技術面でのマネジメントを行い、経営上のゴール達成に貢献する」

    “テックリードという役割”のその後 — Will Larson “Staff Engineer”
  • Courseraのオンライン修士2年目が終わった

    以前にこちらのブログを書いて、その後も継続して読まれているようなので、近況をアップデートしておきます。 私は誰?高山です。2020年からNewsPicksでCTOをしています。上の記事を書いたときはピクシブでCTOをしていました。 2017年頃からぼんやりと大学院入学を考えはじめたのですが、そしたらたまたまイリノイ大学のことを知って書いたのが上の記事です。それから1年ほどかけて準備して出願して、ちょうど転職した月とまったく同じ2020年の2月に入学して社会人大学院生をしています。 コースについてまず、University of Illinoisと名の付く大学にはUrbana-Champaign (UIUC)とChicago (UIC)とSpringfield (UIS)の3つの大学があります。これらは別々の大学です。早稲田と慶應ぐらい別物だと思います。 Courseraで入学できるのはUI

    Courseraのオンライン修士2年目が終わった
  • 踏み台EC2を廃止してSession Manager接続に置き換えました

    こんにちは、エウレカ SRE チームの原田です。 今年 (2021年) エウレカでは、公開鍵認証で接続するEC2の踏み台サーバを廃止し、代わりに各サーバへの接続をIAMで認証できるSSM Session Managerへのリプレースを行いました。記事ではそのモチベーションや、実装のポイントを紹介していきたいと思います。 旧来の踏み台サーバ 旧来の踏み台サーバエウレカで長く運用されていた踏み台サーバ (Gateway) は以下のようなものでした。 各開発者は、自分の秘密鍵を使って踏み台サーバへSSHを行う ( 踏み台サーバ上には各開発者の個別ユーザーおよび公開鍵が登録されている )踏み台上では、接続が許可されているSSH対象のサーバの秘密鍵がユーザー毎に配置されており、その鍵で各サーバにSSHするMySQL / Elasticsearch / Redis など、Private Subnet

    踏み台EC2を廃止してSession Manager接続に置き換えました
  • インフラエンジニアなら気になるQUICのロードバランサ (方式編)

    図1: QUICコネクションを振り分けるロードバランサはじめに記事では、バックエンドのWebサーバへリクエストを振り分ける装置の意味でのロードバランサ(図1)について、QUIC対応の議論状況を紹介します。方式編と実装編にわけて二編を予定しており、稿は方式についての解説です。 IETFでは、F5 Networksとマイクロソフトから提案されたロードバランシング方式が議論されています。稿では下記のインターネットドラフトをQUIC-LBと表記します。 QUIC-LB: Generating Routable QUIC Connection IDs https://datatracker.ietf.org/doc/html/draft-ietf-quic-load-balancers 執筆時点の -07 をベースとしますが、ドラフトですので今後の議論次第で改版が続きます。あらかじめご承知おき

    インフラエンジニアなら気になるQUICのロードバランサ (方式編)