プロダクト、サービスについて

Q:KUSANAGIはWordPressを前提としたプロダクトですか?

A:WordPress以外のCMSも対応可能です。当社のビジネスとして、お客様のCMSの環境をお預かりし、そのマネージドサービスが中心となっていますので、そのお客様のCMSを動かしているプラットフォームがKUSANAGIとお考えください。

Q:KUSANAGIはPaaSですか?プラットフォームとして提供していますか? 

A:いいえ。 お客様のWebサイトを当社でお預かりし運用しております。ホスティングではありませんが、イメージ的にはそれが近いものです。 

Q:KUSANAGIの開発手法は? 

A:基本アジャイルで開発しております。大体一カ月程度(リリースというスケジュールで考えると)のスパンでスケジュールを立てて、チームで開発していく形です。 

その一カ月を週毎に細かいスケジュールを立て、コンポーネント単位毎に担当者を決めていることが多く、そのコンポーネントの部分に関してはその担当者に責任を持って作っていただき、インターフェイスだけ全員で話し合って決め、インターフェイスとアウトプットをしっかり確認しています。

Q:キャッシュを使っていますか? 

A:はい、使っています。3つのレイヤーで使っており、まず一つ目はWordPress上でコンテンツをキャッシングするという機能をKUSANAGIが持っています。二つ目はページキャッシュを持っていてこれはnginxのレイヤーでキャッシュをしています。こちらもKUSANAGIが標準で持っています。 最後にWEXALのレイヤーでやっているキャッシュがあります。

Q:KUSANAGI Stackそれぞれの開発言語は? 

A:KUSANAGI本体はShell Script 、Pythonが中心。ミドルウェアコンパイル(PHP、nginx など)は自社でRPMを作っているので、バッチがあった場合などはCの知識が必要になります。 
WEXALはNode.JS、Python、Lua、PHPを使っています。DavidはAIなのでPythonです。 

Q:Davidの役割のイメージがつかないのですが・・・ 

A:狭義のDavidとしてはKUSANAGIがバックエンドの高速化をするもので、WEXALはフロントエンドの高速化をしており、その為の各ページ毎にカスタマイズするのは人の手でやることが大変な作業になるので、そこをDavidが判断しています。 
広義のDavidとしては社内において自動判断させる機能のことをDavidと呼んでいます。 

Q:AIが社内業務にも携わっているとはどういうことですか? 

A:例えば、サーバーのシステム運用に関しては、定期的にモニタリングしてデータを取得してきて、その中で怪しいものがあるとAIが判断をし、ここは危ないから早く対応してくださいとアラートを出します。

Q:Luaはどういったケースで使っていますか? 

A:WEXALは最終的なHTMLの出力にフックしてそこを動的に書き換えています。それはどこのレイヤーで行われているかというとnginx、Apache等のHTTPサーバで行われており、Luaプラグインとして動いております。 

Q:監視にはなにを使っていますか? 

A:Zabbixを使っています。 

Q:KUSANAGIの開発及び顧客サーバの保守運用という事業で認識は合っていますか?

A:はい、その通りです。 プロダクトの基本となるKUSANAGI本体はオープンソースそしてフリーで運用しており、一部WEXALとDavidに関して上位エディションとして有料(ライセンス契約)の運用となります。 

Q:既に別のサイトで運用していたCMSをKUSANAGIにマイグレーションするケースはありますか?

A:あります。その際にはインフラの知識が役に立ちます。 

リモートワークについて

Q:リモートワークの働き方を教えてください。 

A:現在はリモートワークが基本となります。週何日、出社しなければならないなどの固定の決まりはありません。 

Q:リモートワーク率はどのくらいですか? 

A:会社全体としては約75%、エンジニアのみでスト100%です。管理部門は出社をしなければケースがあるため、全体では75%程度となります(2021年5月現在)。

Q:東京近郊以外に住んでいる方の割合はどのくらいですか?  

A:割合で言いますと、現在は東京近郊に住んでいる割合の方が多いです。ただ2021年に入り、入社・採用が確定している方は地方の方が殆どです。具体的には長野2名、沖縄1名のエンジニアの入社、採用が確定しています。更に今後は地方にお住まいの方々を積極的に採用していく方針です。 

Q:フルリモートでの評価制度はどのようなものですか? 

A:弊社で運用している評価制度があり、例えば営業であれがKGI,KPIを設定しその達成度に応じて評価がなされ、号棒が変化するというものです。エンジニアに関しては基本的に2つの軸で評価をしており、1つ目はプロダクトの開発やプロジェクトの進捗状況での評価、2つ目はスキル面での評価となります。 

Q:リモートワークでマネージメントをすることの大変さを痛感しています。なにか行っていることはありますか? 

A:コミュニケーションを大事にするという意味で、Teams常時接続により常にコミュニケーションが取れる環境を整えており、ミーティングは勿論、困ったことはそのオンライン上で相談をしたりできます。また自社開発のダッシュボードを見ることにより、定量的な共通認識を持て、判断の正確性、スピード、物事を正確に捉えられるようにしております。 

組織、役割について

Q:開発部と事業部ではどのくらいの人数のエンジニアがいますか? 

A:開発部は5名、事業部でもエンジニアだけの人数では同じ5名程です。 

Q:開発部と事業部のエンジニアは役割がはっきり分かれていますか?

A:基本的にはそれぞれ専任で所属は完全に分かれていますが、共同で業務を行うケースもあります。

Q:開発部と事業部のエンジニアに技術に高い低いの関係はありますか?事業部から開発部へステップアップすることは可能ですか?

A:開発とサービス提供ですので、高い低いの関係というよりも役割分担、役割毎の違いになります。当社の場合は事業部であっても業務効率化に向けた自動化のスキームを作るといった開発を行っております。また会社のステージとして、その時期にどこを重視し進めて行くかにおいても変わってきます。基本的に当社に入社をいただける場合は、皆さんまずは事業部にて実際にお客様の案件に携わっていただきながら、当社のプロダクトに関する理解を深めて頂き、その上で当人の意向やスキルレベルに応じた異動を行なっております。 

入社後の業務について

Q:もし入社をしたらどのような業務の担当になりますか? 

A:当社でのエンジニアの仕事には大きく分けて2つございます。まずは開発部のエンジニアで、こちらはKUSANAGIを始めとするWEXAL、AI「David」というKUSANAGI Stackの開発になりバックエンド側のプラットフォームを作る業務になります。もう一つは事業部のエンジニアで、KUSANAGIを使ってお客様のサーバーやWordPressサイト構築をし、保守運用をするという業務になります。またKUSANAGIをベースとした社内システムやSaaSサービスの業務もあります。 

Q:事業部での仕事は納品したらそこで終わりですか? 

A:2つのケースがあります。基本は保サーバーの守運用として続いていきます。お客様の代わりに我々がサーバーを運用・保守するマネージドサービスです(お客様からすると単純にCMSだけを使っているということ)。ただ、お客様によっては構築のみを当社が行い、後はお客様が自社で運用する場合もあります。 

採用の背景について

Q:エンジニアとして求めている人材像はどのような方ですか? 

A:指示待ちではなく、お客様の為にどういうことを行えばよいのかということを自分から考え、提案して動ける人を求めています。特に考えることだけは簡単なことですが、それだけではなく、きちんと手を動かし自分で作れるということが大事です。その為には必然と技術的なバックグラウンドを持っていて、始めはプロトタイプでも構わないので、動くものを作れるという方を求めています。 

 また正規表現を重要視しています。ITの領域の技術の進歩は非常に速い中で、何が残るかといえば原理原則。原理原則は陳腐化しないので、ベースの考え方がしっかりしたものを持っていることが大事だと考えています。例えば、API,モジュール、フレームワーク等を使いこなせるのは勿論大事ですが、ではフレームワークの中がどうなっているのかを理解できている人でないと不具合が起きた時の対処、対応、理解ができないと考えます。正規表現に関して言えば、当社のビジネスはWebシステムが中心ですので、Webというのは全てがテキストと考えられますので、テキストを処理するのに最適なツールが正規表現だといえると思います。正規表現が文字列表現の原理原則だと思っております。その為に全員が正規表現を理解し、書けることが大事だと考えております。 

Q:これまでPHPを得意としていましたが、入社をしたとしたらどのような業務から入る事になりますか? 

A:事業部にてお得意なPHPを活かしながらご活躍いただくことになります。我々はただコードを書くだけではなくて、フルスタックで実際にクラウド環境を0から構築してネットワークを組んでDB設定までを行いますので、インフラの設定ができることが必要です。そちらも主に手作業でやるのではなくてshellでやることになります。 

Q:これまでインフラエンジニアとしての経験を積みましたが、御社で活躍できる場所はありますか? 

A:事業部側ではお客様のマネージドサービスが中心です。最初にまずクラウド上に構築しますのでインフラの知識は重要です。また社内システムのインフラ構築業務もありますので、インフラエンジニアとしてのご経験を活かせると思います。