Translate

2016/04/17

今までの振り返りと、見えてきた方向性

ソフトウェア開発をしてきて10年が経過して、今までのこと、分かったことを整理してみる。

略歴

福島県生まれ、中学校まで福島で育つ
高専に入学し、宮城県でプログラミングを学ぶ
卒業後、東京に本社のあるSIerに就職
と思ったら、配属されたのは宮城県で組み込みソフトの開発
マイコンとかそんなに好きじゃないな、と思いながらも、車載ソフトを結構頑張って開発
主に海外向けの開発を楽しくやらせてもらい、出張でも良い経験・人脈を築けた
プロセスにこだわって、独学で学びながら実践でもノウハウを蓄積
ポイント:MBD、TDD、リファクタリング、課題管理、日程管理、チーム運営

要件定義、設計、実装、テスト支援、チーム管理と一連の仕事をこなして10年経ち
最新のソフト開発を求めて、Web開発に転職
現在、Ruby On Railsでサーバーサイドの開発に勤しむ

こだわり


コードにこだわる

潔癖コーダーの名のとおり、DRYでリーダブルなコードにこだわっています。書籍やWeb記事で情報はたくさんありますが、実践出来ている人は少ないです。
理由は様々ある(使い捨てのコードとかプロジェクトが短期間とか)と思いますが、どんな理由があれ、コードにこだわらない人はいつになってもできるようにならず、そういう人に増えるにつれ、チームのサステナビリティ・モチベーションはどんどん低下し、Outputの質が落ち、プロジェクトの最終的な品質・価値は低いものになってしまいます。


プロセスにこだわる

コードにこだわるためには、プロセスにこだわる必要があり、テストを使ってリファクタリングすることが欠かせません。全体の設計ももちろん重要で、不適切な機能分割では無駄なコードを作りがちですし、テストもしづらいです。
総じて、全体設計→実装→テスト→リファクタリングと、どれか一つでも手をぬくと最終的な品質の低下・遅延になります。


否定しない

自分が否定されるのが嫌いなので、人のことも否定しないようにしています。否定してしまうと、否定しあう負のスパイラルに陥り、消極的になってしまいます。
議論でも、なるべく否定せず、肯定的に建設的に結論をつけるようにしてます。


目指すところ


たくさんの人が使って、楽しい・うれしいWebサービス

月並みですが、GoogleやFacebook、Airbnbなどのサービスが好きです。
・一過性ではなく継続して使えるもの
・楽しいだけではなく、生活に不可欠だったり、楽になる


ハードウェアも連携

Webだけで完結せず、ARやVR、カメラなどを使ったセンシングで新しいUXを提供したいです。

0 件のコメント:

コメントを投稿