製造業ベンチャーでソフトウェア開発と業務効率化をした話 – 導入編

はじめに

エレファンテックでは、産業用FPCの生産を開始した2017年から一貫してソフトウェア開発を社内で行っています。現在では製造業でもソフトウェアを利用していない企業は無いと思いますが、自社で開発している企業はまだ珍しいのではないでしょうか。

現在開発しているソフトウェアに一区切りがついたこともあり、これまで2年弱(2018年11月現在)FPC製造のためのソフトウェアを開発してきて、良かったところや苦労したところをまとめようと思いました。

この記事ではシリーズの導入編として「製造業ベンチャーでなぜソフトウェア開発をしているのか」「自社開発することでどんなメリットがあったのか」といった概要を、そして今後連載する記事では各々のソフトウェア開発について詳しく書いていきます。

エレファンテックとは

電子回路の基板、特にフレキシブル基板を新しい製法で製造しているスタートアップ。いわゆるハードウェアベンチャーと呼ばれる企業の多くが製造をEMSに任せているのに対し、エレファンテックは製造工場を作り都内で実際に製造をしている。

www.elephantech.co.jp

現在開発しているソフトウェア

現在まで開発されているソフトウェアを大きく分けると、開発順に次の3つの種類があります。

  • ファイル変換
  • 生産管理
  • トレーサビリティ

それぞれの詳細については記事を改めて書くので、ここでは簡単な紹介だけしておきます。

ファイル変換

ガーバー形式からPDF形式に変換し、同時に製造に必要な様々な加工を施すソフトウェアです。

現在では後述する生産管理のソフトウェアに組み込まれ、図面をアップロードすると即座にPDFとサムネイル画像に変換され、その場で確認できるようになっています。

生産管理

製造する基板の一覧や、工程ごとの製造指示、納期の指示などの生産管理業務をするソフトウェアです。

同時に多くの基板を製造する中で、「どの案件の仕掛品がどの工程にいくつあるのか」という情報がリアルタイムに可視化されていることは、製造にもはや不可欠な要素になっています。

トレーサビリティ

どの基板が「いつ」「どのような製造条件で」製造されたものかを追跡できるようにするため、各種装置や資材の記録を残しています。

これらは今も生産工程の一部として毎日使われています。また、その他にも歪み補正プログラムなど工程の変化によって使われなくなったソフトウェアもいろいろありました。

注文の詳細情報画面(表示されている情報はテストデータですが、一部画像を加工しています)

なぜ自社開発しているのか

そもそも最初にソフトウェア開発を始めた理由は「必要だったから」というのが正直なところです。産業用FPCを作り始めた頃はまだ会社も小さく、製造のために数百万円のソフトウェアを購入するのは現実的ではありませんでした。またスタートアップにはよくある話ですが、「これくらい自分ですぐに作れる」という(後から思えば楽観的な)気持ちがあったのも事実です。

そして開発したソフトウェアを使い始めるとすぐに、ソフトウェアが業務に組み込まれていることが非常に便利に感じられるようになりました。当時はエレファンテックのフレキシブル基板をオンラインで受注していたのですが、受注するとSlackに通知が来ます。そしてリンクを開くと、製造用に既に変換されたファイルをダウンロードすることができるようになっていました。受注から製造までの流れが非常にスムーズで、一度この状態で仕事をすると「ファイルをダウンロードしてソフトウェアで変換してまたアップロード」という煩雑な作業には戻れません。

またこのような便利さを実感すると、「ソフトウェアによる効率化がエレファンテックの競争力になるのではないか」という考えもすぐに生まれました。

FPC製造はまだまだ人手をかけている工程が多いように見えますし、社内の業務を見ていてもソフトウェアで省力化・効率化できる点はたくさんあります。エレファンテックは新しい技術でFPCを製造することで効率的な生産を実現していますが、その効率性は生産管理など製造以外の部分を改善することで更に高めることができます。逆に言えば新技術による利点もその他業務が非効率であれば簡単に失われてしまうのです。会社の競争力を高めるための重要な仕事だと思うとやはり自社開発をするべきだと思うようになっていきました。

このようにして、注文情報の管理から自然な延長として生産管理システムへと開発は進んで行きました。そして現在まで開発を続けています。

自社開発の苦労したところと良かったところ

苦労したところ

  • 幅広い知識が必要

開発をする中で一番苦労している点は、自社サービスを開発・運用する上でサーバの構築やネットワーク、各種プログラム言語といった幅広い知識が必要とされている点です。

基本的には、ファイル変換や生産管理システムなどアプリケーションの開発に注力したいのですが、それらのプログラムを活用していく上でどうしてもサーバの構築やエラー発生時の対応など他の部分に時間を取られがちです。

幸い最近ではAWSなどのクラウドサービスを利用することでそういった手間を大幅に削減することができてとても助かっています。むしろこういったサービスがあるからこそ、エレファンテックのような製造業を中心としたベンチャー企業でも自社でソフトウェアを扱うことができているとも言えます。

良かったところ

  • カスタマイズ性
  • 社員からの機能要望
  • 業務へのフィードバック

一方で自社開発をしていて良かったと思う点を挙げると、一つは当然ですがカスタマイズ性が高いという点です。製法や工程の違いで既存のソフトウェアを使うのは難しいという事情もあるのですが、それだけでなく自社開発することで生産工程の変更や実験のための変更に素早く対応できること大きな利点です。

次に、ソフトウェア開発チームにとっての「顧客」は同じ会社の社員なのでバグ報告や機能要望をすぐに貰えるという点です。市販のソフトウェアとして考えると機能が不足している状態でも、すばやく最低限使える状態でリリースをして、実際に製造現場で利用してもらいフィードバックをもらいながら開発を進めることができています。これ以上完成度を高めるのはコストが掛かりすぎるからといった理由で機能が足りないままで人手でカバーしている面もあります。

最後に、ソフトウェアの仕様検討を通じて工場などソフトウェア以外の業務へのフィードバックができるという点です。日常的な業務を忙しくこなしていると見逃してしまう点も、仕様検討のために時間を取って見直したり、他の人の目を通すことで、「実はこのやり方非効率なんじゃない?」とか「この作業ってもう必要ないんじゃない?」と気づくことがよくあります。これはソフトウェア開発を始めた頃には想像していなかった意外なメリットでした。

まとめと次回予告

結局、ソフトウェアを自前で開発し始めたのはそれが自然だったからというのが理由です。そしてソフトウェアを開発し利用している中でその重要性を感じるようになったという流れでした。

もちろん今でもソフトウェアは全て開発するという考えではなく、「これを自社開発することが本当に良いのか」「既存のソフトウェアを購入した方が良いのでは」という比較は常に行っています。開発が大変なソフトウェアは購入した方が良いと思うのですが、一方で購入したソフトウェアは機能を変更したい時などに融通が効かず、自社開発しているその他のプログラムとの連携も悪いという点から、ソフトウェア開発者としては全て自社開発したいという思いは常にあります。今後も「業務の効率化」を目標にして、開発と購入のバランスを見極めていくことになると思います。

今回は導入編としてソフトウェア開発全体を通しての経験や考えたことを書きましたが、次回からはそれぞれのソフトウェアについて、より具体的にどういう悩みがあって開発を始めたのか、開発し運用していく中でどのような問題が起きどう改善していったのか、などについて書いていきます。第一弾はファイル変換について書く予定です。

コメントを残す