Solist Work ソリストワーク

高品質なweb開発をシンプルに




About Us


Solist Work ソリストワークは高品質なWeb開発をリーズナブルに提供します。

シンプルに無駄を省いて必要なものだけを提供し、

徹底した自動化によってニーズに焦点を絞って、

ソフトウェアエンジニアに直接発注できるプログラムの直売所です。

システム開発が高いのはなぜでしょうか?

システム開発が遅いと感じませんか?

高品質なWeb開発はどうすればうまくいくのでしょうか?



Services

10人のソフトウェアエンジニアがいれば10倍の速度でプログラムができるでしょうか? 100人のソフトウェアエンジニアがいれば100倍の規模のプログラムができるでしょうか? 実際にこのようにできたことはありません。 おそらくこれからもないでしょう。 綱引きのような単純な作業に落とし込めない限り大人数でプログラムを作るメリットはあまりありません。

世界で最も有名なフレームワークであるRuby on Railsを例に説明します。 作者のデイヴィッド・ハイネマイヤー・ハンソンはこのフレームワークを少人数で使うように設計しています。 おそらく彼は一人でWebサービスを開発できるように設計しているとさえ思います。 それは作者がRuby on Railsについて語った記事を読めばわかっていただけると思います。 フレームワークは密結合な一枚岩になっており、Web開発でよく使いそうな機能はほとんど装備されています。 これによって少人数でWebサービスを最速で開発できるようになっているのです。

Ruby on Railsを使っている多くの会社は、このことを理解しないでたくさんのソフトウェアエンジニアで作業します。 するとどうなるかというと、一枚岩の設計になっているため何かやるたびに他のことをやっているソフトウェアエンジニアに影響がでます。 そこでSlackなどのチャットサービスを使用してリアルタイムに連絡を取りながら仕事をするようになってゆきます。 これは一見よさそうに見えるのですが、それほどうまくいきません。 なぜならば、仕事時間のほとんどがチャットのアラートに支配されるようになるからです。


Concentration

チャットのアラートで異なる文脈の割り込みがひっきりなしにはいるようになると、元の仕事の文脈に戻って集中して仕事をこなすことは難しくなります。 それは、人間の集中力はいったん途切れると回復するのにかなり時間がかかるようになっているからです。

芸術家が静かなアトリエにこもって一人で仕事をするのは集中力が必要だからです。 小説家が静かな書斎にこもって一人で原稿を書くのも、学者が静かな研究室で一人で論文を書くのも、ソフトウェアエンジニアが静かな部屋で一人でプログラミングするのも同じ理由からです。 皆さんも仕事が捗っていて集中しているときに邪魔をされて仕事が手につかなくなった経験はお持ちだと思います。 開発合宿を行うと成果が出やすいのは合宿中に別な仕事は依頼されないので、ほとんど割り込みが入らない環境で作業ができるからです。 そうであるならば、普段から開発合宿のように仕事をすべきなのです。

プログラミングにおいて最も大切なことは集中力が高い時間を多く確保することであると言えます。 ソフトウェアエンジニアは集中力を商品として販売しているとさえ思います。 高品質な商品を提供するためにはワインのように適切な状態で管理することが必要なのです。 一日中チャットのアラートで割り込みが入る環境にいるソフトウェアエンジニアは集中力の高い時間はほとんどありません。 集中力が高い時間がないのでソフトウェアエンジニアひとりあたりの馬力は相当低下します。


Answer

加えて人数が増えると人数に比例して調整コストが高くなり更に時間がかかります。 ソフトウェアエンジニアの熟練度も各々違うので、まずいコードが入らないようにチェックする時間も必要です。 たくさんの人間で開発するとソフトウェアエンジニアは意思疎通に多くの時間をとられ、お互いに意図していない相互作用から生まれるバグも増えていくとフレデリック・ブルックスは指摘しています。 世界初のアプリケーションサービスプロバイダを作ったポール・グレアムは、少人数で開発していたためランチタイムの会話以上に話すことがなかったから競合に勝つことができたと述べています。

優れたソフトウェアエンジニアが一人で早く仕事を終わらせることができるのはこういうカラクリがあるのです。 GitHubで成功しているプロジェクトを観察するとわかります。 どのプロジェクトもコアなソフトウェアエンジニアはほとんど一人、いたとしても数人です。 たくさんいるように見えるのはたまに協力してくれる人が多いだけです。 船頭多くして船山に上るという状態をうまく回避しているから成功しているのです。 そしてこれまでの話を裏付けるかのように、どのオープンソースもチャットを使わないで開発されています。 Rubyの作者であるMatzもチャットは使わないと述べています。

10人のソフトウェアエンジニアがいれば10倍の仕事をこなすわけではないのに10倍の費用がかかります。 これがシステム開発、受託開発が高い理由です。 Solist Workでは一人でこなすので安く開発することができますし、余計な調整コストもかかりません。 インフラ構築まで一人でこなしています。 詳細はContact, Email, Twitterからお気軽にお問い合わせください。

Solist Workではオンラインミーティングを定期的に行うことによって意思疎通をはかっています。 進捗や議論のためには一週間につき30分から1時間くらいのオンラインミーティングを行うのがよいのではないでしょうか。 リリース直前になると頻度が増えることもありますが、チャットで集中力を落とすよりは オンラインミーティングで問題を解決したほうが効率がよいですし、 映像を使って確認もできるのでミスも格段に減ります。 ミーティングするほどでない内容についてはメールでご連絡ください。

はじめての方にもZoom , Appear.in , Googleハングアウト などでご相談を受け付けております。 いずれも無料で利用可能ですので、MEETINGのアイコンをクリックするか、オンラインミーティングでのご相談はこちらからお気軽にご予約ください。 オンラインミーティングを使用したことがない方はオンラインミーティングの始め方を参考にしてください。