スタートアップのエンジニアに求められること
はじめに
スタートアップでエンジニアをしています。たいきです。
2回目の投稿になります。
今回は、スタートアップのエンジニアの仕事はプログラミングだけじゃないよーというお話です。
仕事内容
現在は5ヶ月ほど前から立ち上げた新規事業の開発責任者をしています。
いまのメインの仕事はMVP(Minimum Viable Product)と呼ばれる最小の機能を持ったプロダクトの開発です。
いま振り返ると開発以外も色々やってきたので、
これまでどういった仕事をしてきたかをざっくり箇条書きにすると、
- 新規事業のアイデア出し
- 事業戦略
- 競合の調査
- 業務プロセスを考える
- プロダクト設計
- プロダクト開発
- 初期ユーザー集め
こうやって書いてみると、プログラミングっていうのは業務の一部でしかありません。
少人数の会社ですので、エンジニアは1人だけ、もちろんビジネスサイドとの打ち合わせも僕が行います。
最初のころは、フロントからインフラまで面倒見なくてはいけないので、開発に非常に苦戦していました。。
しかし、この辺りは実務を通して必要なことを勉強してキャッチアップしていけば、どうにかなったりします。今でもレベル不足を感じることは多々ありますが、動くものを作ることを念頭におけばいいです。(適当に流してますが、未経験の方向けに必要なレベル感もそのうち書きたいと思います。)
ですが、最初からずっと難しさを感じているのが、業務プロセスを考えてアプリの設計に落とし込むところです。
ビジネスサイドとは業務プロセスから話し合ったりするのですが、実現したいことや現状課題に感じていることなど色々上がってきます。特に事業の初期のフェーズだと、アプリだとどのように実現できるか、どれくらい工数がかかるかなど色々考えないといけません。UXのような話かもしれないです。
ここが難しいし、面白いところなのかなと思います。(技術的なことでいうと、今後のサービスの変化に耐えれるDB設計とかも難しいですが、、)
また、ある程度MVPを作り始めてからも、常にプロダクトは変化します。
ビジネスサイドの要求を全部開発すると、かなり大変だと思うし、納期になっても開発できない可能性も十分あるかと思います。
僕が意識してるのは、サービスへの良い影響が大きく開発のコストが低いものから開発するようにしてします。
以上のようなことをするためには、事業全体を俯瞰する必要があるので、冒頭で言った開発だけがエンジニアの仕事じゃないなーと最近思いました。