ジュニアによる非営利プロジェクトの開発経験

こんにちは、habrahabr!



パートナーと私が後輩の助けを借りて非営利プロジェクトをどのように開発したかについての短い話を話しましょう。



誰かに夢中になっているこのアイデアは、私たちが自由な時間に実装できるよりもはるかに多くのプロジェクトのアイデアを生み出したことに気付いたときに私たちを訪れました。 したがって、2〜3人のジュニアを採用し、コードレビューを実施すると、新しいアイデアを非常に効果的に実装できると楽観的でした。



画像





当初、私たちは初心者の開発者に3か月のインターンシップを提供しました。彼らは非営利プロジェクトに取り組み、そのソースコードはGitHubにあり、私と同僚からコードレビューを受け取ります。 その結果、実現された製品と後輩が得られます。これはGitHubでのコミットの歴史であり、これは恥ずべきことではありません。有用な経験と、さらなる雇用のための推奨事項です。



最初の問題



私たちが遭遇した最初の驚きは、経験豊富な開発者よりもはるかに多くのジュニアが労働市場にいるという事実でした。 それ以前は、労働条件の良いかなり魅力的なプロジェクトでルビー開発者を見つける経験がありました。

無給のインターンシップの申し出に対する多くの反応を見たとき、私は非常に驚いたことを認めなければなりません。 私は嘘をつきません、私はテレグラムのすべての候補者と通信する時間がありませんでした。ある開発者と話している間、次のように書いてくれました。



事実、ジュニア労働市場の状況は、IT全般で起きていることとほぼ正反対です。 今日、「プログラマー」を訓練する多くのコースがありますが、最終的に、これらの有料コースを受講した後、ほとんどの人は、実際的な経験がなく、進むべき方法と場所に関する絶対的な理解のない非常にまれな知識を持っています。 30から40人の候補者が1週間以内に1人の若手空席に来る理由です。



この点で、各候補者のライブインタビューの実施から離れ、いくつかの簡単なテストタスクに置き換えなければなりませんでした。



最初のタスクは、おそらく考えられるすべての設計および実装エラーが収集されたMVCフレームワークの明らかに悪いコントローラーコードの例でした。 候補者は、このコードにコメントし、それを改善する方法を提案するよう招待されました。

2番目のタスクは、最初のタスクのコードと同じ機能を実装する単純なWebアプリケーションを作成することでした。



ここで、2つ目の驚きがありました。 すべての参加者が2番目のタスクを超えたわけではありません。 タスクが複雑すぎるとすぐに言った人もいれば、熱心にタスクを取り込んで永遠に姿を消した人もいれば、「来週」タスクを実行して今日まで約束し続ける人もいます。



コードを書く時間



それにもかかわらず、3人の適切なジュニアを選択し、プロジェクトの開発を開始することができました。

言うまでもなく、屈託のないコードレビューのアイデアは素朴でしたか?



初心者開発者のグループを指導するには、多くの時間だけでなく、チーム内の適切に構築されたプロセスも必要です。 コードの品質をチェックする自動化ツールと信頼性の高いテストシステムが必要です。 後輩が書いた単体テストがバグをキャッチすると信じるのは簡単でしょう。

すべてのテストに合格しても、アプリケーションの主な機能が機能しない状況にしばしば直面しました。



あなたも忍耐強くなければなりません。 経験豊富な開発者が経験しない典型的なエラーは何度も繰り返されます。 そのため、主な問題とその解決策に関するドキュメントを管理するプロジェクトの開発と並行して始めました。 このような知識源は、採用担当者が一般的な問題に対する答えを見つけ、プロジェクトでより迅速に適応するのに役立ちます。



まとめ



私たちのプロジェクトがどの段階にあるのか興味があるなら、私はまだそれに取り組んでいると答えます。 「バグを修正してデプロイする」ために残っています。 それにもかかわらず、私たちはそのような冒険に決めたことを後悔していません。



まず、開発者の一部はすでに最初の有料の仕事を見つけていますが、同時に彼らは私たちのプロジェクトの生活に参加し続けています。

第二に、GitHubでソースコードを確認し、後輩に仕事を提供する準備ができている企業が、私たちに連絡し始めました。

第三に、私たち自身がインターンのトレーニングに非常に貴重な経験を持ち、さらにチームとプロジェクトの管理に経験を積んでいます。



次は何ですか



したがって、最初のプロジェクトでの作業の結果、初心者デベロッパーの市場と、実生活に向けて適切に準備する方法について多くのことを学びました。 そして今、数ヶ月後、私たちはイニシアチブを拡大し、より多くのジュニアが必要な経験を得る機会を与えることができる新しいプロジェクトのアイデアを持っています。



私たちの目標は、初心者の開発者に実際のプロジェクトでの経験を積む機会を提供することです。これにより、仕事を探したり、面接に合格したりするときに自信を持てるようになります。



しかし、これはおそらく別の記事のトピックです。 だから遠くに行かないでください!



All Articles