エンジニアとしてどうサバイブするかを考えてました
最初からインフラエンジニアを目指していたのですか?
はい、いくつか理由はありまして。
- 開発エンジニアは案件ごとにプロジェクトが変わりがちだけど、インフラエンジニアだと一回つくると長めに同じプロジェクトに携われる。
- インフラはどこの業界でも同じように使われるので、業界内外問わずいろいろなところを見れそうだなと思った。
- あと、インフラは学習するにしてもお金がかかりがちなので個人ではやりづらく、会社でやった方がいいなと思っていた。
この辺の理由から、最初からインフラエンジニアを目指していました。
ただ、開発をやりたくないというわけでは全くなくて、どちらもやっていきたいです。今もツール系や、OSSの活動などでプログラムを書く方が多いです。
OSS活動、あとで詳しく聞かせてください!
ファンコミを選んだのはなぜですか?
前職はTHE インフラ屋さんだったので、それより上のレイヤは会社的に対応はしない方針だったので経験できないという状況でした。
私としては、インフラもですしその上に乗るアプリケーションの構築や、もっとビジネス的な視点も得たかったので幅を広げてやれる会社にしようと考え、事業会社を中心に会社を探していました。
そこでファンコミを見つけ、縁があって入社となりまして希望どおりインフラエンジニアではあるのですが、それだけではなく仕事をさせてもらっています。
城石さんには、エンジニアとしての本業以外でも、採用面談やインターン、ハッカソン主催などいろいろと協力頂いておりありがたい限りです!
エンジニアってなんだろう?
城石さんにとって、エンジニアってなんですか?
結構とざっくりとした質問で恐縮ですが、エンジニアって何する人だと思いますか?
最近似たようなことを考える機会があって言葉にしてみたんです。それが、
「自分はエンジニアである以前に、エンジニアリングサービスを売る商売人なんだ」
ということです。
エンジニアって直接相手にしているのは人間的ではない技術なのですが、その技術を使って人間を幸せにできる職業だと思っています。
良く言われることですが、どれほど商品やサービスが優れていても、買い手や使い手がつかなければ価値はないという話がありますよね。これって商売の世界では常識なのにエンジニアの世界、少なくとも自分が見てきた中ではちょっと違うのかなと感じていました。
やっていることは技術を使ってプロダクトを作ることなのですが、その上位に、何らかの価値を会社に提供するという目的というか作る理由があるはずなんですよね。
いろんなエンジニアさんがいらっしゃいますが、私が見てきたエンジニアさんの中には自分のスキルやアイデアに売り物としての価値があるかどうかをあまり深く考えずに、自分のセンスに任せて仕事をしているような方がちらほらいらっしゃいました。
自分はインフラエンジニアですが、特に前職では障害対応などの仕事だけでは実際あまり評価はされませんでした。そういう中で自分はどうやって生き抜いていこうかなとはよく考えていました。
自分も含めですが、エンジニアの方は量の差はあるかもしれないけれど、そういうことが結構あるんじゃないかなと感じています。
OSS活動は、その辺の課題感というか意識があって始めたところがあります。
なるほど。最初にインフラエンジニアを選択した理由といい、エンジニア観といい理由がはっきりしてますね。
エンジニアとしてサバイブしていくためにどうするか、という課題感があってのOSS活動なのですね。では、この流れでOSS活動について教えてください!

OSS活動は面白い
改めて、OSSの活動について教えてください!
OSSの活動は、自分はこの市場、世の中でどう評価されるのだろうと思ったことがきっかけで始めました。
さきほど簡単に触れていますが、エンジニアってエンジニアリングサービスを売る人だと思っているんです。自分自身の考えや今まで学んだ知識・技術を動員してプロダクトを作ったら、買い手や使い手って付くのだろうか。プロダクトに価値を感じてもらえるのだろうか。自分はちゃんとエンジニアリングサービスの売り手として評価されるのかなと。最初はそれを知るために始めました。
ですので、皆さんぜひソースを見てみて、使ってみて、感想聞かせてください!
submarine - Deeply dive into the IT infrastructure
submarineはどういうプロダクトなのですか?
Ansibleの代替になれるような構成管理ツールでNode.jsを使って開発しています。
自分はインフラエンジニアとしてPythonはよく使うんですが、Pythonのインデントはあまり好きではなくて(笑)
JavaScriptで始めたのは、着手当時にNode.jsに興味をもっていたという簡単な理由は一つありますが、JavaScriptメインで開発されているアプリケーションエンジニアの方って結構いらっしゃると思っていて。
そういった方でも使いやすいインフラ構成管理ツールがあると良いなと思ったことも理由としてはあります。
ちょっと話が変わってしまうかもしれませんが、Ansibleって主にyamlで記述しますよね。インフラの構成は最終的にこうなるんだっていう設計図をドキュメントとして書くもので理想をそこに表しているものなんだなと。それってなんか欧米、キリスト教っぽいなと感じてました。
日本って理想よりも現実に合わせて変えるっていう価値観を持っていると思っていて、yamlのようなドキュメントとして記述するものではない構成管理ツールの方がいいなという漠然とした思いはあって、プログラム言語ベースで作っている理由の一つではあります。
なるほど、面白い視点ですね。なるほど〜!

OSS活動で困っていることなどありますか?どの辺が難しいですか?
機能的にはある程度いいものができてきていると感じてはいますが、技術面ではない、例えばいかに使ってもらえるようにするのかなどは私自身にとっては難しい所が多く勉強になっています。
エンジニアとしてはそういったモノを作る以外のところは確かに難しく感じますよね。
OSSでプロダクトを公開してますという話をすると、大体の場合はすごいねって言ってくださるんです。それはそれでうれしいのですが、自分としてはその先に行きたいなと思っています。
勉強会に顔を出したり、ドキュメントを英語で書いて外国の方にも使ってもらえるようにしたりと、楽しみながら試行錯誤しています。
日本のOSS開発者はそこまで多くないようですし、皆さん結構ばらばらでやっている感じがしています。そこを協力して開発できるようにしたいなと、今はその辺を目指しています。
オープンソースカンファレンスの様子

最後に、読んでくれている方へ
私の所属しているサービス開発部って、すごい特殊だと思っています。
多くの方がサービス開発部の特徴として自由って挙げることが多いようですが、本当に自由だなと。
これって外部の方に伝えても、それってどこの会社でも言うよねっていう反応で終わっちゃうのでなかなか伝わりづらい気はするんですが。
その気があればなんでもやらしてくれるのは言うまでもなく、やりたくないことをやらないという選択肢を排除しないんですよね。
これって結構すごいカルチャーなんじゃないかと感じています。良いのか悪いのかはわからないのですが、特殊だと感じるし自分には合っている。これは個人的には大きいです。
ワーク・ライフバランスはとても優れていますので、自分で学びたいことに時間を使うことができます。
私はこのサービス開発部、好きですね。