宮崎悟編:北海道在宅開発職~充実した開発環境もご紹介~
北海道在住エンジニア 宮崎 悟さんに、在宅勤務の様子をおうかがいしました。
1. 当社入社前の仕事内容
1990年代はメーカー系のシステム子会社で、UNIX/Windowsのプログラム開発をしていました。
具体的にはLinuxやソラリスをネットワーク経由で自動インストールするようなシステムや、Linuxのカーネルダンプを解析して取得する仕組み、pingを飛ばすツール、IPフィルターを一変に設定するなどの、今では当たり前となってきている技術の開発をしていました。
その後、2000年代にSIの手伝いを行うようになり、メール関連のSIや、ISPのサーバ構築自動化、RPM作成、Linuxカーネルダンプの一次解析などを行っていました。2010年は、PCI-DSS関連のセキュリティ設計やプロジェクトマネジメントをやる羽目になっていました。
その後、一度、SIの下請け会社に転職をしましたが、僕のスキルに見合った仕事がなく、また、プロジェクトマネージャー職以外で応募したにもかかわらず、入社してすぐに全く知らないシステムのプロジェクトマネージャーを任されたことで会社への不信感が募ったため退職しました。
今度こそ開発の仕事をしようと探して見つけたのがプライム・ストラテジーの開発職でした。
2. 現在の職種と仕事内容
入社した当時、KUSANAGI7がリリースされたばかりで、開発の手が回らなくなりつつある頃でした。
僕が最初に手掛けたのは、KUSANAGI8のリリースにあたって、スクリプトの書き直しやRPMの作成し直しなどです。
本来、パッケージのRPMは、SPECファイルからソースコードまで、一貫して外に出せるような仕組みにしておかないといけません。ですが、KUSANAGI7の時点では、ソース中のどこから持ってきたものかなどの情報のすべてがまだ含まれていませんでした。KUSANAGI8へのメジャーバージョンアップの時にはそうしたことを改善し、ちゃんと外に出せるパッケージにしないといけないということで、シェルスクリプトやソースコード、RPMの全てを入れ替えるということをしました。
その後、実は一度、体調の関係で退職したのですが、KUSANAGI Runs on Dockerの正式版をリリースするために帰ってきました。
3. 仕事で使う機器へのこだわり
PCはたくさんもっていますが、メインで使用しているものはメモリをフルで載せ、CPUはその時に一番いいものを搭載しています。今ある環境はHDDを駆逐して、SSDに切り替えています。HHDはもう要らないですね。
機材を買い替える時期はメモリの規格が新しくなった時と決めていますが、それが大体5年ほどで、機器の寿命とちょうどいいタイミングで買い換えられるので、結果的に安くついています。
<現在の環境>
- メインPCは9世代目Intel Core i9 8core/128GBメモリ/10GbEのWindows10 Pro
- Windows上のWSL2と、Webブラウザで主に生活しています。
- モニタは27”2K縦、42″4K横、32″4K横の3面構成
- NASはZFSでSSD4台でRAID10構成。10GbEでLACP構成で接続しています。
- Linux(Ubuntu20.04/Centos8)をベアメタルで常時稼働
- 通常SSH経由のヘッドレスで使用していますが、X ServerをWindows側で動かしているので、Xアプリケーションも稼働できます。
- 500WhのUPSを使っていましたが、容量が足りなくなって昨年1000WhのUPSに切り替えました。
- フレッツをIPoEで接続しているので、ネットワーク環境はそこそこ速い(下り700Mbps/上り200Mbps)です。
4. 在宅勤務で変化したこと
特にありません。
通勤時代に沖縄のハッカソンに行っていた期間にも現地で仕事をしたことがありますが、その当時、すでに外部のツールを使っていたため、リモートでも問題なく仕事ができたという経験がありました。前も今も、場所は関係なく仕事ができると思っていますし、実際、不都合を感じたことはありません。
コミュニケーション面で言えば、もともと90年代からチャットを使ったコミュニケーションをしてきましたし、チャットは文字に残るので、言った、言わないが起きません。また、週に一回は開発会議で顔も合わせていますので問題を感じたことはありません。
SIをしていたころは現地へ出張して物理の仕事をしなくてはならず、直接コミュニケーションを取らなければならないことが多かったため、チャットを使えなかったのですが、そっちの方が大変でしたね。
また、僕自身の契約形態も開発のみと区切っていることもあって、他の業務が入ることはないので、より問題がないのだと思います。
5. 健康維持
あまり気にしていませんが、睡眠はよく取るようにしています。あとは、定期的に肩と腰のストレッチをするくらいです。
また、指を動かす趣味を持った方が良いなと思って、ガンプラ作りを始めました。それまでも好きではあったのですが、置く場所がなく、あまりしてきませんでした。今は一軒家で、置く場所が増えたので、大人買いしていろいろ作っています。ザクなどの量産を前提とした試作機やジオン系が好きですね。
6.業務について困ったこと、解決方法
ビルド環境をGitLabによりCI/CD化しており、これまでの手動テストを自動化しています。Dockerなどのアプリケーションコンテナを使用していますが、最近はLXCのようなOSコンテナも導入してテストをしています。
7.将来の夢、目標
KUSANAGI自体は、バージョン7、8でレスポンスの速さをある程度極めているので、今はジョブを生成する部分をいかに速くすることに注力している段階です。
また、復帰して一番の目的であったKUSANAGI Runs on Dockerの正式版をリリースという目的はある程度達成できましたので、次は後継を作る段階に入りたいと考えています。僕がしているRPMの作成やメンテナンスの中でも、特に引き継ぎたいと考えているのは、RPMの作成です。
RPMの作成は、SPECファイルの文法やC言語のコンパイルがわかればできるものですが、そもそも一からSPECファイルを作っている人があまりいませんし、パッケージを作る人もごく一部しかいません。SPECファイルのノウハウもあまり外に出るものではなく、情報が少ないので、その辺も含めて教育をして行かなくてはならないと思っています。
最近はすぐに外注してしまう企業が増えましたし、せっかく採用した若い人材をしっかり育てることもしないことが増えています。そのため、物理的に若い人材が居なくなり、いても各企業で取り合いです。
また、最初から派遣に行ってしまう若者が増えていますが、派遣企業のほとんどが育成をせず、現場に放り投げることがほとんどです。そのため、20代の良い時期に育成されず、ビジネスマナーも身に着けられていない人が増えてしまっています。
若い人をしっかり引っ張り上げて、一から育てていかなければならないと思っています。
8.平日のある一日のスケジュール
- 9:00前後起床
- 10:00までは情報収集、メールの確認など
- 10:00~仕事開始
- 12:00 前後に昼食
- 18:00 には仕事終了。夕食、入浴後に読書したり、ゲームしたり。
- 22:00 前後に就寝