アプリ作成のススメ

### 〜個人開発を機に開発案件入場後1年で分かったこと〜

## 読んで欲しい人

- 未経験からエンジニアになりたい。
- 未経験入社はしたが「案件ガチャに失敗した」と思っている。
- 入社後思うようにキャリアアップができておらず焦っている。

未経験入社でまがりなりにも業務4年、念願の開発案件就業から1年で、そんな過去の自分や過去の自分と同じ境遇で肩を落とす人たちに、エールをこめた、メモ。

# はじめに
　巷でよく最初の案件を「案件ガチャ」と言われる。最初からRやSRを引くことを期待し、それが引けずに失望してしまいがちだが、ダメな会社ではない会社を選び、AかBのカードから始めるしかないのだと今では思う。
　家電量販店とかのC以下は会社選びの時点で論外だが、経歴偽造をせずにランクBのカードから、正攻法でいかに勝ち上がるか。
　このオススメな方法のひとつが、個人開発である。

# 自己紹介
 29歳未経験で期待を持って業界に入ったものの、QA案件案件が続く。QAの最後1年半〜2年程はそれなりに裁量も持って仕事ができたが、Swiftの開発案件はなく絶望感を持っていた。
 そんな中個人開発でひとつアプリができた頃、2023年1月から念願の開発にジョブチェンジ！
 ※ついでで、ふたつ目のアプリはAppStoreに公開中のためリンクを載せておく
  →[MulWatch](https://apps.apple.com/jp/app/mulwatch/id6462937037 "MulWatch")
# キャリアにおける個人開発のメリット
#### 個人開発のメリット(得られたもの)
- 自己完結の意思！
- 技術的な引出し

技術的な引出しはあくまで付随的なものでしかなく、
最も大きかったのは、課題を自己完結させる意思と経験の積み重ねだったと思う。
ここについて、このあと詳細を書いていく。

#### 個人開発のデメリット
- ひたすら孤独(誰にも聞けない)
- 報われるまで時間がかかる(いつ/どうなったら報われるか全く見えない)

孤独については、言語がSwiftという社内で誰も扱ったことはないし、案件も全くない言語だったことも要因としてはあると思う。とにかく孤独であった。
ただこの「孤独」が実は1つの案件で大きな成長を得る最も重要な練習だったと、今では思う。
ここからは、その説明として、実際業務についてどうだったかを書きたい。

# 開発業務につく前 ↔︎ ついてからの最大のギャップ
### コーディングのそもそもの心構え(自走の強い強い必要性)
- 「分からなければ聞けば良い」
- 「未経験入社」「現場で勉強させてもらってキャリアアップを」

 こういった認識は、プロとして1人日が割当てられる中、甘えがあった。
 たとえば単価60万円として、上記のような認識で時間単価4000円、1日32000円とかの血を流すに見合うだけの働きが、できているだろうか。
 考えてみてほしい。対個人で、仲の良い友人の手伝いをしてこれを請求できるだろうか。

 未経験の初手で大半が入社する常駐メインの業態で、客のニーズは何か冷静に考えるべきだ。
 根本的に、忙しいから人手が欲しい。そこに常駐業務のニーズがある
 人手もそうだが、そもそも自分の経験を還元することが本来客に求められている中、この認識が甘かった。
 よって、「分からないことを聞く = 忙しい人の工数を、奪う」であり、この甘えのマインドが蔓延してしまうと、頭数が増える分、掛算でマイナスが拡大してゆく。だから未経験は、ご教示頂きたい現場の先達の人間たちに毛嫌いされるのだ。そして「スクールで学びました」も、このマインドの傾向が忌避される大きな原因と感じる。
 
__だからこそ、自走し自己完結するマインドが必要なのだ。__

 また、自分のキャリア面にとっても、タスクを自己完結させる覚悟があると成長の速度が全然違う。次の章では、覚悟によってどれだけ得をしたかを書き連ねてゆく。

# 自走の覚悟で得られる成長速度
#### 開発現場へ、獲得経験値異常のチートスキルで転生する。
孤独な個人開発を経て開発現場に転生したその時点。
あなたはきっと
①獲得経験値が最低30以上のランダム倍
②パーティーメンバーの経験値を加算する
このようなチートスキルを業務経験0年の時点で身に備えていることと思う。
最低30倍?そんなバカな、と思うかもしれないが、決して大袈裟ではない。
以下を念頭に考えてみてほしい。

- 現場の課題に対し、実証して勝算を持った上で発言・提案できる
→ 開発3年とか、5〜7年の他BPの方と比べても、
　裏付けがあり確実そうなので最初に任せてもらいやすい
- 来た指示通りに書くコードなんて、8割以上うまくいくのだ
…最も大切な「自分で考える経験」にはほぼならず、
　これを5年10年やっていも、年数に見合う大きな成長が見込めない
- 1つの事象や課題で得られる経験値が16倍
…検討段階から経験を得られると、
　実践の回数と深さはいずれも4倍以上かわる
　　→直接の担当箇所に加え、
　　　検討段階の結果も経験として血肉になる
- ファーストペンギンおよびリーダーは、二番手以後のメンバー達のつまづきも経験値になる
…レビューはもとより、つまづいた際の問合せを受けることで、
　他メンバーの経験すら自分の経験として取り込まれる。
- 自他の試行回数が多いことで、何より案件全体が見渡せ深い洞察を得られる
- 業務で一つの案件を見渡せると、他案件への水平展開が効くようになる
(個人でも既に小規模ながら見渡す経験をしている)
- 業務上未経験の実装でも、いくつかは個人開発で乗越えた経験を持っている
- 未知の内容にタックルし打破することも、既に何度も経験ずみ

少し脇道に逸れるが、最後2つの「経験済み」の強さも小さなテーマを立てて説明したい。
#### 個人開発での経験の蓄積、何より未知事項を突破してきた経験値の強さ
言語のバリエーションはあれ、プログラミングで発生する問題の根本原因は似通っている。
また、何より未知を突破してきた経験というのは非常に強くて、業務で初めて直面する課題であっても、
- 恐れない。
- ハマらない。
これは非常に強いと思う。心理面も物理面も、実はこれらはすごくデカい。
少し噛み砕いて説明したい。

##### 1.恐れない
まずは「恐れない」ということ。
自分で考え続けて成功できる経験の裏付けがあるので、ブレークスルーまで自分で考え手を動かし続けられるのだ。
営業職でも金鉱を掘り続けることに例えて説明されるが、９９％まで考えて成約できなかったらそれはゼロである。楽天の「最後の1%のための努力」という話を聞いたことがある人もいると思うが、同じように開発も、自力で突破した/しなかったは、経験の質が全く異なるのである。
また、未経験のうちは何事も時間がかかるが、時間の制約があるプロジェクトでは早い段階で問い合わせるなどして期限内に片付けることも求められる。
個人開発のバックボーンがあると、諦めず考えられること、類推元になる経験があることも相俟って、二重の意味でブレークスルーの経験が得られやすいのである。

##### 2.ハマらない
「ハマらない」には主に以下二つがある。
- 課題に対し常に最低3-4通りの方法を考えられ、手を動かし続けることができる。
- どうしてもムリなときも、ある。が、この適切な対応へも既に慣れがある。

後者の「慣れ」は、具体的に
- 見切りが早い。
- なぜ出来ないかの説明ができる。
(=何があればできそうかをセットで聞きに行ける)
- 優先度をつけた実装へも慣れている。
(=指示待ちにならず、見切りと同時に連絡一手で他の業務に仕掛かれる)

この辺りの強さは、開発４〜5年のBPメンバーに指示も出したり実装上の問合せを受け付けたり、開発5~7年目くらいの顔をして幅を利かせていたと思う。(でもボク、やっともうちょっとで1年なんだ。マジでマジごめん。)


# まとめ:個人開発はキャリアを急加速する
#### 「30倍」でもは過小評価
　30倍以上って本当に?と思うかもしれないが、これでも過小評価だと思っている。
　コーディングは、小さなことでハマると独力では解決までに非常に多くの時間がかかる。
　ここを自力で、クリアできるかできないか、してきたか否かは、経験の質として愕然とするほど大きな隔たりがある。
　高い有料のプログラミング講座を受けたこともあるが、講師も良いエンジニアになるためには、この意思と習慣を持てと言っていた。
　また、ひとつの案件を体系的に神経が隅々まで行き渡るように理解しているといないとでは、これも5倍とか10倍と言ったレベルではない、もはや次元レベルの隔たりがある。
　これらを肌で感じている人であれば、漫然と指示をこなすよりも、得られる経験値が80倍、100倍かわると言っても納得することと思う。

#### 最後に
　趣旨からそれるので割愛したが、個人開発は孤独で、苦しいモノがある。特にキャリアの焦り、養うべき家族などががあれば、より一層。
　しかし一方で、これも割愛したが手元で自分の作ったものを毎日使う喜びや、遠い所で毎日使ってくれる嬉しさはかけがえのないモノである。
　そして、キャリアにこれだけ大きな相乗効果があり、仕事の時間ががとても楽しいものになる。今開発を仕事で出来ていなくても、たとえ開発自体に就けなかったとしても、仕組みや露出向上、UIなどを考えたことが、開発以外にもたくさんの経験がつながってくる(この辺は会社の余暇的なところでかなり生きているが、機会があればまた書きたい)。
　何より、冒頭で「エール」と書いたが、一番伝えたかったのはこのことである。
　
　　___今感じているその孤独は、正解である。___

　作ること、作ったものの先に、会社を介さず生身で人と繋がることができる。AppleStoreのレビューはまだないけれど、それでも自分が使う喜び、役に立ててくれている人がいる喜びは大きいものである。
 また業務においても、自力で解決してきた日々の経験と、それでついた筋力は自分を裏切らない。
 だから、この孤独すら、楽しみましょう。
 自分がまず使うところを夢見て、ひとつひとつ地味にバグを消していく。
 夢を見ながら、日々少しずつ学んでゆく。
 
 人には、苦労して得たものは大きく感じるバイアスがある。ドMの変態バイアスと個人的に呼んでいるが、これこそが農耕により豊かさを享受できた、人としての本質的な幸福のひとつなのではないかとさえ思う。
　小さくてよいので、これを機にぜひ自分の欲しいサービスを何か作ってみて頂けたら幸甚である。