DevTools でパフォーマンスチューニング入門 / Introduction to Performance Tuning with DevTools
はじめに こんにちは。WatanabeJin(@Sicut_study)です。 今回は以前Twitterでも話題にした「成長しないエンジニアほど本屋に行く」という理由について解説したいと思います。 成長が遅いエンジニアほど本屋に行く話 最近、エンジニアとして成長が遅い人たちに共通する特徴を発見しました。それは「技術書コーナーを好む」ということです。これに気づいたのは、自分自身がエンジニア1年目で、同じ行動をしていたからです。… pic.twitter.com/p35NaS6T4a — Watanabe Jin (@Sicut_study) January 7, 2024 もしあなたが説明することに当てはまるところがあれば、それをきづけたのは大きな分岐点だと思います。ここから自分の学習方法などを見直してみてください。 成長が遅いエンジニアほど本屋に行く 私はプログラミングコーチングJISOU
はじめに 現代の人に名著以外の本を読むような時間はない こんにちは、Watanabe Jin (@Sicut_study)です みなさんは何か新しい技術を学ぶときにどんなコンテンツを利用するでしょうか? 最近ではUdemyなどの動画講座を利用する人が多いと思いますが、本を読んで学ぶという人もまだまだ多いのではないかと思います 今回は私がこれまで5年間読んできた150冊以上の中から厳選した30冊の本を紹介します。広く多くの人に役立つものから、特定の技術の書籍までどれを読んでもあなたの大切な一冊になるのでぜひ読んでみてください 現代人には時間がない なぜ働いていると本が読めなくなるのかという本が話題になりました 現代人は本を読む時間がなくなっています。 仕事に追われてしまい、プライベートで本を読む暇などなくなっているのです。 しかし、エンジニアは「技術職」なのでプライベートの時間でも学習をして
これまで数多くのシステム障害を復旧してきました。 障害は無いに越したことは無いですし、起こらないように最善を尽くすのが我々エンジニアの使命です。 しかし、どれだけ最善を尽くしても起こる時には起こります。 今回は、これまで数多くの障害を復旧させてきたエンジニアが、復旧作業時に何を考えているのかを改めて言語化してみたいと思います。 こういう情報ってそれぞれのエンジニアの頭の中にあってあまり共有されないので、意外に参考になるかなと思います。 障害復旧対応の醍醐味 表現が適切かは分かりませんが、僕はシステム障害を復旧させるのが大好きです。目の前に起こっている事象からヒントを集め、地道に原因を切り分けてクリティカルヒットを見つけたときは名探偵になった爽快感があります。 加えて、動いているものを常に動かし続ける日頃の保守運用とは異なり、動いてないマイナスの状況を0まで戻すということで、復旧成功した際に
こんにちは。Findy Freelanceの開発チームでエンジニアをしている2boです。 この記事では私が開発生産性を上げるために開発をする前に考えていることについて書きます。 ここで「開発をする前」というのは次のようなタイミングを指します。 PdMなどから新規施策の仕様について相談を受けたとき 起票された開発Issueを最初に確認するとき 自分がIssueを作成するとき なぜこのタイミングで考えるかというと、開発を進める上での方向性を間違える可能性を減らし後から軌道修正をしやすくするためです。 なおこの記事においては、開発生産性を「開発成果物の提供価値を投入リソースで割ったもの」とします。 いくら頑張って開発をしても、そもそもやるべきことの方向性を大きく間違えると提供価値が0に近づくため開発生産性が低下します。 特に開発が高速なチームで方向性を誤ると高速に間違った方向へ進んでしまうことに
3人の若い米国人エンジニアは既存の部品、既存のアルゴリズム、3Dプリンターを使用し、画像照合航法で飛行する無人機を1日で作り上げてしまい、彼らは「ウクライナ政府系ファンド、特殊部隊、地上軍から直接声がかかっている」と明かした。 参考:How A Trio Of Engineers Developed A GPS-Denied Drone For Under $500 Theseusの無人機にはウクライナ政府系ファンド、特殊部隊、地上軍から直接声がかかっている米軍はロシアや中国の妨害してくるGPS信号への対応に苦慮しているが、3人の若いエンジニアは既存の部品、既存のアルゴリズム、3Dプリンターを使用し、画像照合航法で飛行する無人機(500ドル未満)を1日で作り上げてしまい、Aviation Weekは「彼らは低コストでGPSを代替する手段があると考えている」「この無人機の開発速度は国防総省が
CTO室 相談室でCARTAの各部署の技術メンター・コーチをしている前田@brtriver です。 自分の仕事内容を説明するのが難しいですが、スタッフエンジニアでいう右腕です! いろんな部署のサポートをしていると開発要望タスクのリストを確認する場面がよくあります。 そして、その中の「優先度」という項目で正しく優先度をつけることができていない現場が多いと感じます。 そこで、今回はどのように「優先度」を考えればよいかについて私自身が意識していることをまとめてみるので、ぜひ一緒に考えてみましょう。 優先度が「高」だらけになってしまう チケット管理において優先度が「高」だらけになってしまう現象を目にしたことはありませんか? チケットは困ってる本人が書くため、基本とその優先度は「高」が多くなります。 チケットに残すために書いたとしても、優先度低いタスクはそもそもやらないという判断されることが多く、そ
株式会社はてな フロントエンドエキスパート mizdra 1997年生まれ。2020年3月に電気通信大学情報理工学域Ⅰ類を卒業、4月に株式会社はてなに入社。2022年2月にフロントエンドエキスパートに就任し、チームの開発をリードしながらはてな社全体でのフロントエンド啓蒙活動を担う。HNの読みは「みずどら」。 X(Twitter) SpeakerDeck mizdra’s blog 技術や業界など仕事についての情報収集の基盤として多くのエンジニアを支えていたTwitter(現X)が、以前とは異なる姿となってゆく今、必要な情報を過不足なく収集しインプットする方法に悩みを持つ人も少なくありません。 「アフターTwitter時代の情報収集」と題したこの連載では、業界をリードする方々に、Twitterの変化によって普段の情報収集の方法がどう変わったか、欲しい情報を効率よく集めるために何をしているのか
おれはCTOをやめるぞ!ジョジョーーッ! だれ?こんにちは @zaru というIDで活動しているプログラマです。今年で40歳になります。株式会社ベーシックでCTOをしており、個人ではYouTubeでムーザルちゃんねるという技術動画を配信したり、コードが動かないので帰れませんという技術書を書いたりしています。プログラミングとデザインが好きです。 こんなアイコンで活動してますベーシックに中途で入社し14年、CTOをやって10年たちました。ベーシックではメディア事業に始まり、スマホのゲームアプリ開発や、アドネットワーク、最近ではBtoB SaaSの開発をしていました。 ベーシックという同じ会社にいながら全く異なる仕事をしていたので飽きることなく、あっという間に時間が溶けていった感覚があります。当時開発メンバー最年少で入社したのに、今では最年長になってしまいました。そして、今年2023年末をもって
エンジニアに人気のおもちゃ「フリッパーゼロ」でできる10の遊び2024.02.18 10:0082,355 David Nield - Gizmodo US [原文] ( そうこ ) 「禁断のハッキング端末」とか「エンジニア系オタク最高のおもちゃ」など、いろいろな言い方をされるFlipper Zero(フリッパーゼロ)。 ガジェットはスマホくらいしか触らない人にとっては、遠い存在のマシンかもしれません。調理器具で言えば低温調理器やエスプーマのような玄人向けアイテム。ただ、調理器具とは違って1つの高度なタスクに特化するのではなく、なんでもかんでも両手いっぱい抱え込んだ上にリュック背負って荷台もひくような、あれこれ多用途な玄人ツールなんです。 見た目は完全にオモチャですが、いろいろな通信規格に対応しており、テレビから家のセキュリティカメラまで多種多様な端末を操ることができます。カスタマイズやテ
生産性を爆上げしたい おのやんです。 みなさん、生産性を爆上げしたいと思ったことはありませんか?私は毎日の業務に取り組む上で、どうすれば生産性を上げられるか日々考えています。 そんな中出会ったのが、こちらの「世界一流エンジニアの思考法」です。 本書を読んだ際には、「なるほど、こういう取り組み方をすれば生産性を向上させられるのか」とものすごく腹落ちしました。 その後、本書に書かれている内容を私なりに解釈・適用して実践してみました。その結果、目に見えて生産性やアウトプットに変化が見られました。ということで、今回は実際にやってみた取り組みとその変化について、本記事で紹介したいと思います。 本書について 本書を書かれた牛尾さんは、アメリカのマイクロソフトで現役のソフトウェアエンジニアでいらっしゃいます。マイクロソフトで働く同僚の生産性の高さを観察し、彼らが実践していることなどを紹介する内容となって
この記事で伝えたいこと(忙しい人向け) 新人ほど「保守していく」ことの感覚が腹落ちしにくいのではないか説 我々は保守しやすいコードを書くべきであり、保守しやすいコードを達成するための手段として原理原則やデザインパターンが存在している 保守ってなんで必要なんだっけ?という体系的な理解を持ったうえで、具体的なテクニックを学んでいくことが大事 // 追記(2023/12/9) なんとミノ駆動 さんにコメントいただけました。 もちろん良いコード/悪いコードで学ぶ設計入門 ―保守しやすい 成長し続けるコードの書き方は読んで影響を受けてます。 とってもうれしい。 想定読者 新卒 ~ 2年目くらいまでのプログラミング初心者 Webアプリの保守開発をしているエンジニア 3ヶ月前くらいの自分(未経験からエンジニアになって1年くらい) こんなことないでしょうか 先輩などから原理原則の観点を共有してもらったり、
トランスクリプト Protsenko氏:私の名前はMykytaです。Netflixで働いています。私の仕事は基本的に、他の開発者が遅くまで職場に残らなくてもいいようにすることです。彼らが午後5時に退社しても生産的であることが私の実現したいことです。私はプラットフォーム組織、つまり生産性エンジニアリング部門で働いており、他のエンジニアのために労力を抽象化しようとしているのです。エンジニアが同じ退屈な技術的問題に何度も対処するのではなく、ビジネス上の問題の解決に集中できるようにします。 いくつか質問させてください。あなたたちのうち何人が、自分で作って自分で動かすという哲学を実践している会社で働いてますか?生産現場との間にゲートキーパーがいないこと、機能や修正をより早く提供できることに満足している人はどれくらいいますか?本番環境で発生したインシデントに対処しているときに、どうすればいいのか分から
あのさぁ シュンペーターを「シュムペーター」と書いたり、 ガンジーを「ガーンディー」と書いたりするムーブあるじゃん? ロサンゼルスを「ロサンジェルス」と書くみたいなやつ あれはなんなん? 別に原語に寄せなくてよくない? って思うのは私だけ? ラジオを「レイディオ」って言うやつみたいな いや別にラジオでええやん! 気取ってるの? 英語ペラペーラ気取り? なんでラジオじゃダメなの? あとはパーカーを「パーカ」と呼ぶとかさ (フーディは別物になるからセーフだけど) あとエンジニアはサーバーを「サーバ」って言うよね? やっぱこだわり? エンジニア特有の? サーバーじゃダメ? 殴る? 私、殴られる? いや殴られる好きだけど(なんの告白) はい、ここでこいつ寒いやって思ったでしょ(いや前からか?) はい、寒いやつですよ私は 今だって漫画喫茶で半裸でこれを書いてますよ 鍵付きだからセーフですよ え、私は
こんにちは。バクラク申請・経費精算チームでエンジニアリングマネージャーをしているsh_komineです。 7月はLayerXエンジニアブログを活発にしよう月間 ということで、今日は最近自分が「開発チームのマネージャーとして意識しているチームのCapability 」について話をしようと思います。LayerXのテックブログでは数少ないマネジメント系の話です。 私自身、エンジニアリングマネージャー歴自体は1年ほどなので、まだまだ足りない面もあると思いますが、誰かの参考になればと思います。 開発チームとCapabilityの定義 開発チームの単位もいろいろとありますが、基本的にはチームとして意思決定し、開発活動を続ける最小単位のチームを想定しています。開発エンジニアにプロダクトマネージャー、チームによってはデザイナーやQAなども含みます。自分の場合は職能横断型のプロダクト・顧客に向き合うチームを
「禅とオートバイ修理技術」これら2つの間にどのように関係があるのかまるで見当が付かず、タイトルだけ聞くとキワモノのようだがWikipediaによるとアメリカでは一番良く売れた哲学書とされている。 海外のエンジニアのブログを読み漁っていた時にオススメされていたのでKindleで買って読んだのだが想像以上に良かったのでメモを残したい。と言ってもwikipediaで説明されている内容を改めて説明しても面白くないのでソフトウェアエンジニアとして響いた部分を引用して僕の感じた事を書き連ねていく。 大都市の重工業地帯に一歩でも足を踏み入れてみれば、そこにはその全てが存在している。テクノロジーである。正面には有刺鉄線を施した高い塀が立ちはだかり、門は常に閉ざされ、「立入禁止」の札が掛かっている。そしてその向こうの薄汚れた大気の中には、金属や煉瓦で造られた醜い建物が立っている。その目的は不明であり、またそ
speakerdeck.com はてなブックマークやxでこの資料が話題になっていた。80%くらいは同意できるが、Slackの部分は個人的にはうーんと思った。特にtimesが好きではなくて、「timesじゃなくてチケット管理システムを使え」と思ってしまった。なんで好きじゃないんだろう?と思ったので整理しておく。 情報が垂れ流しだと探しづらいから timesには思考や調べたことを投稿して、後から見返せるようにしましょうという役割がある。でもそれ、本当に見返せるのだろうか?Slackの検索クエリはGoogleほど絞り込みが効かないし、部分一致の検索でもかなりフィルタリングされた情報がヒットする印象がある。本当に探し出せる気がしない。 また、投稿した人ではない誰かが仕事を引き継いだときに困るんじゃないか、という思いが拭えなくて好きじゃない。例えばエンジニアの退職でリポジトリのメンテを引き継ぐことに
インフラエンジニアの肩書きをSREに変えるタイプの組織変更は近いところから遠いところまでいろんなところで見かけてるんだけど、改めてそれって名前変えただけじゃないよね?って問いかけは個人が組織に、組織が個人にそれぞれ相互でした方がいいと思う。 インフラエンジニアって言葉もまあ定義が死ぬほど広くてどこからどこまで指すのってのは組織によって違うね大変だねって話ではあるんだけど、SRE(Site Reliability Engineering)やPE(Platform Engineering)はインフラと必ずしも対応関係にあるわけではないんだよな。 Platformってのは言ってしまえば会社のエンジニア組織の中で自分達に最適化された基盤を作る人たちの集合体とそのプロダクトそのものを指していて、Platform Engineering組織の中には当然フロントエンドエンジニアやデザイナー、プロダクトオ
〝流しのEM〟として、複数企業の採用・組織・制度づくりに関わる久松 剛さんが、エンジニアの採用やキャリア、働き方に関するHOTなトピックスについて、独自の考察をもとに解説。仕事観やキャリア観のアップデートにつながるヒントをお届けしていきます! こんにちは。久松剛です。 2023年初頭あたりから、DX需要やスタートアップバブルを背景に高止まりしていたエンジニアの待遇バブルに黄色信号が灯りはじめているのをご存じでしょうか。フルリモート勤務から出社回帰の流れが本格化しているのもその一つの表れです。 というわけで、連載第1回目のテーマは「フルリモート勤務事情について」です。 ●IT各社にみる「オフィス回帰が既定路線」になりつつある理由 ●エンジニアがフルリモートにこだわる危険性 ●それでもフルリモート勤務を望むエンジニアへ…… などに触れながらお話したいと思います。 博士(慶應SFC、IT) 合同
個人開発者 catnose ソフトウェア開発者・デザイナー。 個人開発者として、Webデザイナー向けメディア「サルワカ」、ポートフォリオ作成サービス「RESUME」、技術情報共有サービス「Zenn」、簡単にAIサービスがつくれる「だれでもAIメーカー」など、数々のプロダクトを世に送り出す。家族は妻、娘、犬、猫。 個人開発者として、ポートフォリオ作成サービス「RESUME(レジュメ)」や技術情報共有サービス「Zenn(ゼン)」、入力欄や選択ボックスを組み合わせるだけで簡単にAIサービスがつくれる「だれでもAIメーカー」など、数々のプロダクトをヒットさせてきたcatnose(キャットノーズ)さん。現在も複数の開発案件に関わりながら、新たなプロダクトを開発中だといいます。 今回はそんなcatnoseさんのこれまでの作品を振り返りながら、個人開発者として培った開発哲学や、30代になるとともに起きた
ありがたいことに、いわゆる文系・ビジネス職からベイエリアでソフトウェアエンジニアになった前回の記事は多くの方に読んでいただきました。改めてお礼を申し上げます。とはいえ、当然ですが、ソフトウェアエンジニア(以下、SWE)になって終わりではなく、SWE になってからもそれ以上に大切であり、実際に SWE 転向後、どのような経験をしたのか、現実的な点も含めて、この記事では書いてみようと思います。 結論から言うと、初めは知識や経験の浅さから苦労しましたが、最終的には社内査定でも最高評価をいただき、なんとか昇進、異動する運びとなりました。 SWE になってみてまず、ポジティブな面から、状況整理も兼ねてお話しすると、自分は多くの方に使っていただいている製品・機能の Android アプリ(≠ Android OS)及び、そのバックエンドを担当することになりました(つまり、Android アプリがメイン
ITエンジニアの不足が過去最悪レベルで推移している。 システム構築需要にIT業界の就業人口の伸びが追いついていない。 IT業界外への転職も含め人材争奪戦の様相を呈してきた。 SIer(システムインテグレーター)を中心に人材不足が深刻化している。ここ1年間ほど過去最悪の状態が続いている状況だ。 最大の理由は新型コロナウイルス禍で顕在化したDX(デジタル変革)需要がいまだ旺盛なため。コロナの5類移行とともに大型システムの更改プロジェクトなども再開し、どのSIerも人材が足りない状態になっている。 しかも、IT業界の就業者数が急増することはなさそうだ。経済産業省の「IT人材需給に関する調査」によれば、IT関連産業の従業者数は2018年の103万人から2030年には113万人へ拡大すると予測するが、DX需要の伸びに比べると追いついていない。 IT業界の人材不足は統計にも表れている。情報サービス産業
Image generated by OpenAI's DALL·E-3. はじめに こんにちは! 突然ですが、Kaggleのハードルって高くないですか?特に初見だと、複雑なルールや大量のデータなどに圧倒されてしまう人も多いかもしれませんね。また、全て英語なので非英語話者にとってはそこもハードルを上げる原因になっていると考えられます。実際は慣れれば簡単なことも多いのですが、Kaggle慣れするまでにやや時間がかかるのも事実です。そこで、少しでもKaggleのハードルを下げたいと考えて本記事を執筆しました。 対象読者様 この記事は、以下のような方をメインに想定して執筆しました。 AI・データ分析・機械学習に興味があって、Kaggleに参加しようと思ったけどハードルが高くて躊躇している方 Kaggleに参加したはいいものの、ドロップアウトしてしまった方 Kaggleのハードルを乗り越えたい方
ITジャーナリスト/Publickeyブロガー。IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。 AIスタートアップのCognitionは、自律型のAIソフトウェアエンジニア「Devin」を発表しました。 Devinは人間が課題を与えると、自律的に情報を参照し、コーディングやデバッグ、デプロイを行い、システム構築を実現するAIソフトウェアエンジニアだと説明されています。 Cognition AI CEOのScott Wu氏以下はデモ動画からのキャプチャです。 Devinは人間のソフトウェアエンジニアと同様に、自身のコンソール画面(右上)、コードエディタ(右下)、Webブラウザ(左下)を持っています(左上は人間とチャットでやり取りする領域)。 人間がプロンプトで何らかの課題を与えると、まず課題解決のためのプランを生成します。 今回、Dev
初めに 公開鍵による暗号化と署名をプログラマ向け(?)に書いてみました。ちまたによくある暗号化と署名の話はインタフェースと実装がごちゃまぜになっていることが分かり、暗号化と署名の理解が進めば幸いです(と思って書いたけど、余計分からんといわれたらすんません)。登場する言語は架空ですが、多分容易に理解できると思います。 公開鍵による暗号化PKE 早速、公開鍵による暗号化(PKE : Public Key Encryption)を紹介します。登場するのは暗号化したいデータのクラスPlainText, 暗号文クラスCipherText, 秘密鍵クラスPrivateKeyと公開鍵クラスPublicKeyです。PKEは次の3個のインタフェースを提供しています。 abstract class PKE { abstract keyGenerator(): [PrivateKey, PublicKey];
AIに仕事を奪われないために、自分の発想を強化していかないといけない 服部佑樹氏(以下、服部):次に行きたいと思います。「エンジニアとAIの関わり方」ですね。AIが登場したことによって、どういうかたちでエンジニアが変わっていくのか。概念としてはものすごく広いですが、みなさんもいろいろな観点の捉え方があると思っています。 組織としてどうするのかはその次の質問になりますが、あとはキャリアとしてとか、次のポジションをどうしようかなみたいなところも含めて、個人の観点なども含めて答えてもらえるといいんじゃないかなと思います。では黒崎さんからいいですか? (スライドを示して)3番目の質問「エンジニアがAIと協力して新たなアイデアを生み出すための効果的なアプローチ」ですね。あとは2番も合わせていいかもしれませんが、アプローチと潜在的な力を引き出すためのスキルをどうやって学んでいったらいいと思いますか?
最終更新日: 2024年02月27日(月) 1. ご挨拶 2. 本記事執筆のモチベーション 3. ワークショップを通じて得たフィードバック 3-1. Pains -過去抱えた/現在進行形で抱えている辛み- 3-2. Approaches/Solutions -Pains を解消するために取った方策や導き出した解決策- 3-2-1. えいやで場所を決め打ちしてしまう(e.g., GitHub Wiki + Google docs しか使わない) 3-2-2. 個人的に、2023/12/05時点で〜みたいな書き方を心がけている 3-3. Tips -効果的な手法- 4. オーディエンスからの反響 4-1. 気づきや学び・NEXT ACTIONS 4-2. プレゼンター(@hayat01sh1da)へのフィードバック 4-3. Slack での反応 5. おわりに 1. ご挨拶 初投稿となります
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く