シニアDevSecOps/フルスタックエンジニア
年額総支給75,000ユーロから、フルタイム
勤務地: 世界各地からのリモート勤務。
契約形態。 雇用・業務委託などの契約形態、契約主体、準拠法は、採用候補者の居住地によって変わり、事前には決まっていないため、オファー時に決定します。居住地で働くための資格は候補者自身が確認する必要があり、詳細も同じ段階で協議します。
変動報酬。 会社の業績に応じた年次変動報酬を別途支給します。基本給の開始額には含まず、支給は保証されません。
分野。 エンジニアリング
この職種の役割
プラットフォームは現在、マネージドホスティングで稼働しています。一方、主要市場の機関や政府機関には、自社のインフラと管理体制の下で、合意していない外部依存を持たずに利用したいという需要があります。そうした導入に向けた設計図はあり、まだパッケージ化できていない点も明示しています。この職種では、その設計を実際に稼働する導入環境へ移しながら、製品コードの開発も続けます。
最初の90日間に取り組むこと
- Edge Functionsが起動時に参照する外部モジュールを、チェックサム付きのビルド成果物に組み込みます。プライベートネットワーク内の導入環境が、起動のために公開レジストリへ接続しない構成にします。
- コンテナ上に参照用スタックを構築します。Postgresと拡張機能、全マイグレーション履歴、認証サービス、REST層、オブジェクトストレージ、ゲートウェイ、関数ランタイムを、どのマネージドクラスタでも同様に動くKubernetesの基本機能で構成します。
- 新規インストールの標準手順を文書で定めます。先に基本スキーマを作成し、その後のマイグレーションを適用します。動くと主張するだけでなく、空のクラスタで実証します。
- まだパッケージ化できないものを正直に洗い出します。現時点で最大の課題は、日常の運用がホスティングサービスの管理画面を前提にしていることです。顧客側の導入環境にはその画面がなく、代わりとなる運用手順書もまだありません。
その後に担う領域
- 特定のクラウド事業者に依存せず、Kubernetesの基本機能に基づくInfrastructure as Codeと導入用マニフェストを作成します。顧客が運用するマネージドKubernetesでも、同じ構成を使えるようにします。
- リリース経路を構築します。顧客の管理領域外で成果物をビルドし、署名し、ダイジェストとSBOMを付けて公開し、導入先で検証します。顧客のセキュリティ担当者による更新承認が、仕組みの上でも必須となるようにします。
- 外向きの通信は標準で拒否します。許可する通信については、実際に流れるバイト列の形式まで記録し、顧客のネットワーク担当者が説明を信じるだけでなく通信そのものを検査できるようにします。
- メール、本人確認、モデル接続先、タイムスタンプの接続部分を整えます。各機能の構成は顧客が選び、記録について主張できる範囲への影響を明示します。有効なのに接続先がない場合は必ず処理を止めます。気づかれない代替経路を作らないことが、セキュリティ上の要件です。
- 有効にしたAI補助機能のために、小型の言語モデルを顧客の管理領域内にある自社ハードウェアで稼働させます。プロンプトを外部へ送る経路を設けません。
- 製品開発も継続します。仕事のおよそ半分はReactアプリと、その裏側のサーバー関数です。インフラだけを担当する職種ではありません。
求める経験と姿勢
- 状態を持つPostgresサービスをコンテナ化し、本番運用し、手順書上だけでなく実際にバックアップから復元した経験がある。
- Kubernetesの基本機能を使え、永続ボリュームのテンプレートを持つStatefulSetと、Operatorが管理するデータベースの違いを説明できる。
- フロントエンドとサーバー関数の両方でTypeScriptを書き、週の半分を製品コードの開発に充てられる。
- 納期の圧力があってもフェイルクローズの制御を緩めず、そのときの議論を説明できる。
- Postgresの行レベルセキュリティポリシーを読み、一見妥当な設定からデータが漏れる仕組みを説明できる。
- 専任者がほかにいない領域を、リモートで自律的に担当できる。世界各地から応募可能です。上に示した最初の90日間の仕事は、初めの四半期に求められることを率直に記しています。
この職種では担当しないこと
- Kubernetesだけを担当する職種ではありません。仕事のおよそ半分はアプリケーションのコードです。製品開発に関わりたくない方には向きません。
- ゼロからの開発ではありません。既存のプラットフォームには長いマイグレーション履歴があり、導入パッケージの設計も、その履歴と会社が根拠を持って説明できる範囲に制約されます。
- 監査や保証の職種ではありません。ここで作る管理策は、他人のコードへの指摘を書いた報告書ではなく、実際に動くコードです。
- 部下を率いる役職ではありません。現時点では率いるチームがなく、求人でもその事実を隠しません。