はてなキーワード: DataDogとは
# ヨーロッパの主要都市におけるソフトウェアエンジニア向けベストカンパニー
ヨーロッパの各都市でソフトウェアエンジニアにとって最適な企業を探しているなら、以下のリストが参考になるでしょう。
Google, Facebook, Snap, NVIDIA, Microsoft, Apple, Oracle, Snyk, GetYourGuide, UBS, Swisscom, DFINITY, Cisco.
Google, Facebook, Snap, Jane Street, Stripe, Coinbase, Apple, Amazon, Hudson River Trading, Citadel, ByteDance, Two Sigma, Palantir, Bloomberg, Revolut, GSA Capital, Marshall Wace, Quadrature, Five Rings, G-Research, Starling, Personio, DeepMind, DRW, Millenium, BlackRock, MAN Group, Jump Trading, DE Shaw, AQR, Maven Securities, Point72, IMC, Optiver, Susquehanna (SIG), XTX, Old Mission, Squarepoint, Qube Research & Technologies (QRT), Yelp.
Uber, Databricks, Bitvavo, Booking, Miro, Flexport, Atlassian, Spotify, Optiver, IMC, Amazon, Adyen, Google, Stripe, Flow Traders, MessageBird, Reddit, Box, JetBrains, Personio, Elastic, GitHub, Catawiki, Tower Research, Radix Trading, Headlands Technologies, Tomtom.
Google, Meta, Datadog, Criteo, Microsoft, Stripe, Airbnb, Amazon, Atlassian, Hubspot, Workday, Ankorstore, Red Hat, Algolia, Alan, 360Learning, ContentSquare.
AWS, Amazon, Microsoft, Wayfair, Google, Meta, Apple, HubSpot, Stripe, NVIDIA, Snowflake, Personio, Databricks, JetBrains.
AWS, Microsoft, Google, Mastercard, Workday, Salesforce, Meta, Stripe, VMware, LinkedIn, Etsy, Personio, ByteDance, Coinbase, Hubspot.
Google, Apple, Microsoft, Nvidia, Adobe, Workday, Celonis, BMW, Salesforce, SIXT, SAP, Huawei, Personio, Intel, JetBrains, IBM.
Google, Snowflake, Netflix, Pinterest, Rippling, Oracle, Waymo, AMD, Samsung, NVIDIA, Box, Warner Bros, Visa, Amazon.
Amazon, Apple, New Relic, Stripe, Rippling, Revolut, Skyscanner, Microsoft, N26, Criteo, Adobe, Thoughtworks, Oracle, Glovo, Personio.
Apple, Amazon, Roku, Arm, Microsoft, Qualcomm, MathWorks, AMD.
Amazon, Oracle, Microsoft, Flutter, Unity, Skyscanner, Huawei.
Databricks, Microsoft, Nutanix, Rivian, Foursquare, Yandex, JetBrains, Nordeus, Luxoft.
Amazon, Datadog, Microsoft, Apple, Google, Personio, Twilio, Glovo, VMware, Meta, Oracle, Revolut.
Klarna, Spotify, Netlight, PayPal, Ericsson, Ubisoft, Warner Bros, King, Google, Oracle, AWS, Microsoft, Wolt.
Google, Rippling, Oracle, Revolut, Uber, Amazon, Deliveroo, IBM, Splunk.
Crowdstrike, UI Path, Google, Adobe, Stripe, Microsoft, Oracle, IBM, Amazon, Electronic Arts (EA).
Microsoft, Maersk, Zendesk, Workday, Unity.
Productboard, Pure Storage, Apple, Workday, Oracle, Microsoft, JetBrains, Proton, Parrot.
Bolt, Wise, Microsoft, Twilio, Wolt.
Microsoft, Cisco, Aker Solutions, Arm, Mastercard, Meta, Kahoot, Autostore, Remarkable, Netlight.
これらの都市は、ソフトウェアエンジニアにとって多くの機会を提供しています。それぞれの都市が提供する企業は、エンジニアが自身のキャリアを発展させるための多くの選択肢を提供しています。それぞれの企業が提供する機会や文化は、エンジニアが自身のキャリア目標に合わせて最適な選択をするのに役立ちます。 [
この期間に、様々なプロジェクトに関わり、多くのことを学びました。
今回は、私が経験した技術的な話を中心に、はてなでの仕事について振り返りたいと思います。
はてなでは、主にRuby on Railsを使ってWebアプリケーションを開発していました。
はてなブログやはてなブックマークなどの有名なサービスはもちろん、社内向けのツールや新規事業のプロトタイプもRailsで作っていました。
Railsは、高速に開発できるというメリットがありますが、それと同時にコードの品質やパフォーマンスにも気を配る必要があります。
私は、テストやリファクタリング、コードレビューなどの技術的なプラクティスを積極的に取り入れることで、Railsの開発をより効率的で安全に行う方法を学びました。
例えば、私が担当したプロジェクトでは、RSpecやRuboCopといったツールを使ってテストカバレッジやコード規約をチェックし、GitHub ActionsやCircleCIといったサービスを使って自動化しました。
また、Pull RequestやPair Programmingといった方法を使ってコードのレビューを行い、バグや改善点を見つけたり、知識やノウハウを共有したりしました。
また、はてなでは、AWSやGCPなどのクラウドサービスを活用してインフラを構築していました。
私は、DockerやKubernetes、Terraformなどのツールを使って、コンテナ化やオーケストレーション、インフラストラクチャ・アズ・コードなどの技術を実践しました。
これらの技術は、開発環境と本番環境の差異を減らし、デプロイやスケーリングを容易にするという利点がありますが、それと同時に複雑さやトラブルシューティングの難しさも増します。
私は、モニタリングやロギング、アラートなどの技術的な仕組みを整備することで、インフラの運用をより安定的で信頼性の高いものにする方法を学びました。
例えば、私が関わったプロジェクトでは、DatadogやCloudWatchといったサービスを使ってシステムの状態やパフォーマンスを監視し、SlackやPagerDutyといったサービスを使って異常や警告を通知しました。
また、ElasticsearchやFluentdといったツールを使ってログの収集や分析を行い、原因究明や改善策の検討に役立てました。
## チームでの協働
はてなでエンジニアとして働くことで、私は多くの技術的なスキルや知識を身につけることができました。
しかし、それ以上に大切だったのは、チームで協力して問題を解決することでした。
はてなでは、エンジニアだけでなくデザイナーやプロダクトマネージャーなどの他職種とも連携してプロジェクトを進めることが多かったです。
私は、コミュニケーションやフィードバック、ドキュメンテーションなどの技術的ではないスキルも重要だと感じました。
私は、自分の意見や提案を積極的に発信することで、プロダクトやサービスの品質や価値を高める方法を学びました。
例えば、私が参加したプロジェクトでは、SlackやZoomといったツールを使って日常的に情報交換や相談を行い、BacklogやJiraといったツールを使ってタスク管理や進捗報告を行いました。
また、FigmaやMiroといったツールを使ってデザインやアイデアの共有やフィードバックを行いました。
私は、はてなでエンジニアとして働くことがとても楽しく充実していました。
しかし、私は自分のキャリアについて考える中で、新しい挑戦をしたいという気持ちが強くなりました。
私は、自分の興味や関心のある分野にもっと深く没頭したいと思いました。
## おわりに
彼らに感謝する気持ちを込めて、このエントリーを書き終えたいと思います。
・色んなこと満遍なくやりたい
・やべー案件に何年も磔にされたくない
これが多様なサービス、アプリを作ってみたいという話なら高単価SESに行くしかない。
かなりの経験を積んだベテランじゃないと入れない世界で出身学部も見られるから相当に厳しいと思う。
フロントやバックエンド、インフラなどもやってみたいという話なら自社でウェブサービスを運用している上場企業に正社員で入るのがいいだろう。
ただし正社員ということはリリース日には何が何でもサービスインさせる立場になるということでもある。定時退社の社風であっても進捗上がってないなら稼動上げて対応ということは普通にある。
派遣で入ればそういうことは無い。上場企業ならコンプラ厳しいからね。でも数ヶ月程度、長くて数年のスポットになることがほとんどなので長期的にはどうなんだろうな。
ここでは俺の経験を踏まえて「自社でウェブサービスを運用している上場企業に正社員で入る」という前提で話す。
アピールすると良いのは使える言語、インフラの知見、構築と運用の経験。
全部が強い必要は無い。どれか一つが強くて他はまあなんとか程度でいい。逆に言うと全くダメですが一つでもあると厳しい。
使える言語では、C#,Javaを大きめな規模のバックエンドとして使ってるとこが多い反面、対応できる人はフリーにも派遣にもたくさんいるのでちょっと弱い。SIer出身でコード書いてたなら当然できるよね、というレベル。
今ならtypescript(javascript), pythonあたりができてgo あるいは Rust勉強してます、というのがけっこう強い。
分かってると思うが言語が使えるというのは、まっさらなPCを与えられて主要なウェブフレームワークをセットアップしてローカルホストを立てるとこまでを含む。
JavaならSpringboot+gradle+JUnit、PHPならLaravel、pythonならdjango、typescriptならNode+React+knex、あとJestかDreddも入るかな。
インフラ知識では、クラウド、オンプレ両方のメリットデメリットを把握しているとよい。
AWS,Azure,GCP,Oracle Cloudのどれでもいいけど実際に使った経験があるとよい。俺は個人でGCPを契約してkubernetesとVM、LBを使っている。
ネットワークの知識は薄くでも持っていた方がよい。HTTPとかcookieとかセッションとか知りませんCORSって何ですか?レベルでは無理。まあここら辺はウェブサービスを作れば必ずやるので大丈夫だろう。
LetsでSSL証明書を作ってopensslで検証してnginxに適用してHTTPS化ができるならアピールになる。
dockerはもうそろそろ使えて当然のレベルになってきているので必須。実際ウチではdockerが分からない使えない人は面接へ進めないようになっている。
構築と運用では、予算内に収まるような構築と運用、サービスインした後のトラブルシューティングの経験があるとよい。
常にコスト意識を持っていることが必要。クラウドは油断すると100万程度すぐ飛ぶ。コスト意識が無い人を運用担当として採用することは絶対にない。
トラブルシューティングで重視されるのはベンダー対応よりもエンドユーザー対応の方。
サービスを早急に復旧させること、そのためにどういう仕組みが必要なのか、構築するところから語れる知見があるとよい。もちろんそこにもコスト意識は必要。
CI/CD、PrometheusやDatadogによる監視とアラートについて語れるとよい。
CI/CDを扱うということは当然gradle,maven,yarn,シェルスクリプトは書けて使えてwebpack,minify,Jenkinsのコンフィグもできるということである。
どうだろう、かなり雑に書いたが雰囲気は伝わると思う。
あ、git使えないは論外。もし使えないなら今すぐ使えるようになるか諦めるかのどちらかで。
なお、この内容は私の脳内で考えだした想像上の架空のフィクションです。
・就業規則が無い
・会社の慶弔休暇の制度を知りたいと思って人事の人に聞いたら「当社には就業規則が存在しないので、お答えできません」と回答される
・親会社が実施している月曜朝8時開催の朝会参加を強制される(契約上出社時間は10時)
・朝会では全員起立して、社訓を読み上げる。僕以外皆暗証している
・社訓の読み上げは10分くらい続く
・社訓とか聞いたことも見たこともないので、いつも口をパクパクさせながら暗証するふりを余儀なくされる
・業務をより理解するため、という理由で、休日に招集されて親会社の仕事の手伝いをさせられる
・深夜23時くらいまで拘束され、休日出勤手当も深夜残業手当も出ない
・そんな時間まで拘束されると終電が無いので、近くの漫喫で夜を明かす。もちろん手当は出ない
・「奉仕の精神」とか何かの理由で、毎週月曜日の朝に社員全員で執務エリアの掃除をさせられる
・掃除業者に払うお金をケチっているのでとにかく執務エリアが汚い
・掃除道具が圧倒的に足りてないので、社員総出で掃除をしてもキレイにならない
・「掃除機が1台ではとても足りません!!」との社員の悲痛な訴えは予想通り無視される
・一応IT企業だが、健康保険はいわゆるIT健保ではなく、親会社独自の健保に加入させられる。福利厚生はほぼゼロ。寿司とか食べに行けない
・その独自の健保が実施する健康診断は、東京の隅っこの辺鄙な場所で実施されるので会社から1時間以上かけて移動して受診する必要がある
・謎のアバウトさで、体重は5kgくらいサバ読み、視力聴力は自己申告
・問診の際に「反社会的勢力とのつながりはありませんか?」「入れ墨は入れていませんか?」「違法薬物などを常習してませんか?」という、もし一個でも合致したらカタギの世界にいられないようなハードな質問が行われる。既往症や体調についての質問は無い
・会社のネットワーク環境が個人の家並に貧弱で、ちょっとでも大きなファイルをネットワーク経由で扱うと業務に支障が出る
・なので大きいファイルを扱うときは自前の携帯でテザリングすることを余儀なくされる。そのためかなり大きめなパケットプランで契約することを余儀なくされ、そのお金は個人の持ち出しとなる
・「どんなにオフィスが汚くても狭くても構わないので、せめてネットワーク回線だけはなんとかしてください」とCTOや社長に直訴するが、予想通り無視される
・毎月最終金曜日に会社の全体集会が開催され、契約上の業務時間を大きく超過して夜まで拘束されるため、この日は皆いつもより帰りが遅くなる。プレミアムフライデーとはなんだったのか
・全体集会の大半は、社長のありがたいお言葉を数時間ただ座って拝聴する時間となる
・もう少しカジュアルな場をという計らいから、突如IT業界で流行りつつあるTGIF(Thanks God Is Friday)が開催される
・TGIFの場ではビールや軽食が振る舞われることもなく、社長のありがたいご高説が数時間延々と続けられる
・そしてTGIFで話される内容は全体集会で話される内容とほぼ同じである
・つまり感謝すべき神とは社長のことであると、社員に深く認識させられるイベントとなる
・「前職では9割くらいの時間はプログラムを書いてました」とアピールし、その実績が認められて入社することになったが、なぜか人生で一度も経験したことのないインフラエンジニアの仕事を任される
・その理由について入社するまでいっさいの説明が無い。実際のところ入社した後にも説明が無い
・そしてインフラエンジニアの上司が会社に来ない。リモートワークは認められてないのに会社に来ない
・この上司は色々と人類が認識していた常識を外れた行動と言動を行うため、個人的にはUFOにちなんで「UMD (Unidentified Monster Developer)」と親しみを込めで呼んでいる。心の中で
・会社には全社員10時までには来なければいけない事になっているのに、UMDは14時くらいまで会社に来ない
・一応肩書はインフラエンジニアなので、管理しているシステムのアラートが飛ぶとUMDもメッセンジャーツール上に「むむ?」と反応のコメントを残す
・しかし障害対応や原因調査は何もしない。サーバーへログインすらしない
・午前中に障害が発生すると、UMDは「自宅で静観します」とメッセンジャーにコメントを残し、その後音信不通になる
・そして15時過ぎに会社に来る。障害対応は他の人により全て終わっている
・昼時にUMD自身がミーティングを設定したのに、UMDは同僚の女の子とのランチを優先してすっぽかし、他のメンバーは待ちぼうけをくらう
・「俺が時間通りに出社すると、障害が起きた時に誰が対応するんだ?わかるだろ、俺の果たすべき責任の重大さが」みたいな独自の理論で出社しないことへの正当化をはかるが、そもそもUMDは「むむ?」とつぶやくだけで障害対応は行わない。会社にいようがいまいが行わない
・それらの事をUMDの上司であるCTOに伝えたが、そのことが会社にとって「名誉毀損」「誹謗中傷」だと非難される
・当時上司でもあったので「こういう風に進めたらもっと汎用的に効率的に作業できますよ」とUMDにアドバイスしたら、普段誰も立ち入らない密室に呼び出されて恫喝・罵倒される
・ログの解析基盤を整備しようと色々計画を立てて一応UMDにお伺いをすると「お前ごときにそんなの絶対できるわけない」と言われる
・涼しい顔で基盤を作り上げると、UMDはそれを自分の手柄にする
・ある時、海外からUMD宛に荷物が届く。それを見て「ほらxx(私)さん見てよ、俺くらいになると海外から直接俺宛に荷物が届く、ようやく俺もここまでビッグになったんだなぁ(涙目)」と感慨深げ。中身は、サービスの使用者アンケートに答えた結果届いたノベルティグッズだった
・UMDが担当していたシステムで性能面で致命的な障害が発生する
・それでもUMDは「むむ」とだけ反応し、何の改善作業も対策も行わない
・そして会社に来ない
・現場のエンジニアが疲弊していたので、しようがないので私が代わりにサーバーの改善作業を行い、安定化させる
・そのことが「xx(私)は責任外の仕事に介入して現場を混乱させた」ため解雇は相当である、と主張される
・そして手柄はすべて元上司であり別チームのインフラ担当であるUMDのものになる
・UMDが担当するシステムについてクラウドサービスの大規模トラブルに起因するサービス障害が発生する。ただしUMDはクラウドサービスのステータスページを眺めているだけで何もしない
・さすがに会社の一大事なので、別チームの人間もサーバーにログインして調査や回復作業を行ったり、クラウド事業者のサポートエンジニアと緊密に最新状況のやりとりを行い、会社にもそれらの共有を都度行った。また障害について事後に詳細の経緯と対応作業について資料にまとめた。これらはUMDがやるべき作業ではあるが、彼はただステータスページを眺めて働かざること山の如しの様子だったので自主的に皆が代わりに行う
・それらの私や他エンジニアの行動について「蝿みたいな薄汚いうるさい奴がいろいろある事無い事吹聴して、全体に混乱をもたらした」「奴らのせいで障害が長引いた」とUMDは周りに話す
・大規模障害の反省から障害対応マニュアルの整備がUMD中心に行われる。その結果書かれていたのは「俺(UMD)が一番エラい」「俺の言うことは絶対」「俺に逆らうことは許されない」という内容となる
・他の人が担当した障害対策のために行った作業が、なぜかというかやはりすべてUMDの手柄となる
・本来UMDが担当すべき作業については、口では「やる」と宣言しているが、いっさい何も手を付けられない
・クラウド事業者のステータスページにちょっとでもエラーが報告されるとUMDは会社に来ない。朝9時ころに発生した軽微なステータス異常を確認すると「これは重大事態ですね...家でじっくり静観しないといけない」とメッセンジャーでつぶやき、その後音信不通になる。なおステータスは9時台にすぐ回復しサービスにはいっさいの影響がない
・そしてUMDは15時ころに出社する
・前回障害後からしばらくたった後に再度大規模障害が発生する。
・しかし障害対応マニュアルを作成し、その結果障害対応プロセスの中で一番エラい立場だったはずのUMDはいっさい反応をしない。理由は、その日は飲み会が設定されていて、二次会で盛り上がっていたからである
・この障害はUMDが担当すると宣言していた対策を行っていたらいっさい影響が無かったはずのものであった。そのことが複数人の知るところとなった。その後、UMDは突然「これはチーム全体の責任」「チームが一丸となって取り組まなければいけない課題」と、一切存在しない「チーム」という言葉を強調しだす
・UMDが障害対応を行わない、アラートに対応しない事についてはCTOや技術部長レベルでも問題となっており、彼らがUMDに問いただすと「今の監視設定は色々なサービスのアラートが混ざっていてノイズが多すぎる。その結果障害対応が正しく行えない。それはすべてxx(私)のせいだ」と言い訳をする
・しかし実際は、UMDの担当サービスのアラートが全体の99.9999999%であり、他のシステムはUMD以外のエンジニアの努力により安定して運営されているためアラート自体が送信されることは稀である
・「アラートを分ける」という方針の元、Datadogに設定されていた自分が担当するサービス関連のアラート定義の大半をUMDは削除する
・その結果システム異常に気づけず、UMD担当のシステムで障害が発生する
・最終的に、いろいろあった結果UMDが私の様々なアカウントを強制的に削除して業務妨害をするという暴挙に出たため、私は職場で仕事をすることが困難になる。そのことをCTOに伝えたら、私が解雇という扱いとなる