こんにちは! @matsup8 です!
この度、7月末にプロダクト戦略部からプロダクト開発部へ異動し「エスカレーションエンジニア( Escalation Engineer ) 」として働かさせていただくこととなりました。 約1ヶ月が経過しましたのでエスカレーションエンジニアとは一体どういう職務なのか、どういった仕事を行っているのかを紹介したいと思います。
エスカレーションエンジニアとは
あまり馴染みのない名前かと思いますが、Microsoft など外資系ではメジャーな職種として存在しており、 Customer Support Engineer , Customer Engineer と呼ばれることもあるようです。
トラーナにおいて、エスカレーションエンジニアは下記のように規定されています。
エスカレーションエンジニアとは ユーザーからの質疑に対してのサポート及び技術支援 を行う職責です。 必要であれば、ソースコードを見て、現状どうなっているか、バグがあれば当該チームに修正の依頼などをテクニカルに行っていくものです。 また場合によっては自分が解決できそうな修正であれば自分が行うものです。
なぜエスカレーションエンジニアが必要なのか
トラーナで働く方々が、各々の職務を全うできる状況を作り出すためにエスカレーションエンジニアが設置されました。
弊社にはMADRAS という社内システムが存在しています。
トラーナの業務全てを支えるシステムであるため、大規模なものであり仕様も複雑なものとなっています。
当然、利用者である社内の方々から質問や調査の依頼が発生します。
これらの質問や調査依頼は、エンジニア各々が返答し必要であらば改修をする、というスタイルを取っていました。
しかし、開発をドメインごとに分業をして行っていることもあり、開発担当外の調査だった場合には
ドメインの知識のキャッチアップから始まるため、返答に時間がかかりその間の利用者の業務が停止してしまう場合があります。
エンジニアも、自分の本来行うべき改修を停止し返答に当たるため、チームとして抱えているタスクの進捗が遅れてしまいます。
この全体的なスループットが低下している状態をエスカレーションエンジニアを配置することで解消していく狙いです。
職務内容について
基本的な内容として
- ユーザー、またはエンジニアからの質問、調査依頼への回答
- 改修が必要な場合にはコードの改修
- ドキュメント整備
上記の3点となっています。
通常業務の流れとしては、
Slack のチャンネルで @matsup 宛のメンションが飛ぶ
-> 依頼の GitHub issue を建てる
-> 必要であればコードの改修を行う
-> 回答をする
という流れです。
すぐ回答できるものもあれば、ドメインの知識がないとかなり難易度が高いものもあり
探偵業でも始めた気分になっています。
これまでとエスカレーションエンジニアとしてのこれから
エスカレーションエンジニアを名乗りまるっと1ヶ月ほど経ちました。 僕が質問、調査依頼を一手に引き受けることで、自分の業務に集中できるという声を何回か頂いており、非常にありがたかったです。
正直自分のキャリアに関してはかなり試行錯誤しており、自分はエンジニアとしてどう振る舞うのが良いのか
というのを課題感としてずっと持ち続けています。
このエスカレーションエンジニアというポジションは、弊社 CTO のめもりーさんに提案していただいたのですが
最初聞いたときには「僕の今までやってきた働き方の発展型かも!」という感想を抱きました。
ユーザーとの架け橋を務めながらエンジニアとしての能力も活かす、そんなポジションだなと感じています。
僕が今考えているエスカレーションエンジニアの目的は、「エスカレーションを減らすこと」だと思っています。
調査依頼も仕様確認も、回答した!解決!やったね!だけで終わるのではなく、そもそもなぜこの依頼が来たのだろうか?
根本解決はできないのだろうか?というところまでを考えていけば、エスカレーションエンジニアとして最大の価値を提供できるのではないか、と思います。
エスカレーションしていくぞ!!