ITに入る方法:HeadHunter School of Programmersの新しいセット





こんにちは 私の名前はレオで、HeadHunterの開発者です。 私がどのようになったか知りたいですか? おそらく私は最初から始めます-私の若々しいニキビの量は、プレイステーションで遊んだ時間としか比較できませんでした。 宇宙の一部の力(お母さん、お父さん、ありがとう:)によって、私は投資銀行で働き始め、通貨、株式、債券で取引を始めました(はい、映画「ウルフからの狼」のように)。



最初は、銀行での生活はかなり退屈でした。多くの肉体労働と哀れみ、彼らのコミッションだけを考えていた昔ながらのブローカー。



私の人生におけるプログラミングの出現により、すべてが変化しました。 手間がかかり、私は仕事をするコードを書き始めました。 最初はシンプルで簡単でしたが、時間が経つにつれて複雑なケースになりました。 その後、ある素晴らしい瞬間に「何かがうまくいかなかった」と銀行は大量の生地を失いました。 そのため、 整形手術は費用がかかり、開発するのが苦痛であることがわかりました。それはコードだけでなく、テスト、品質管理、その他の興味深く非常に有用なプラクティスでもあります。



十分な知識がなく、学ぶ必要があることが明らかになりました。 私は知識を求めて有名なリソースに行き、coursera.orgでいくつかのコースを受講し、さらに基礎のコンピューティングの基礎を修了しました。 しかし、これは私には十分ではありませんでした。IT業界の実在の人々とコミュニケーションを取りたいと思った 、HeadHunter School Programmers 2014/2015の募集に関する投稿に出会いました。





ほぼそのようなトピックは、学校で勉強しなければなりませんでした。



私の意見では、最も有用な講義に注目しています。



開発方法論



開発プロセスに関する講義では、理論的知識のみを受け取りました。これは、原則として、ネットまたは書籍で見つけることができます。 主な価値は、プロジェクトのチーム作業中に得た実践的な経験です。 私たちは、週に2回、顧客向けのデモと回顧展を開催しました。 チームとして働き、信頼し、助け合うことを学びました。



エンジニアリングプラクティス



エンジニアリングの実践に関する講義や宿題で、コードリファクタリング、TDD、単体テスト全般、CI、そしてもちろんコードレビューの実践的なスキルを身に付けました。 これらのスキルは、チームプロジェクトにうまく対処するのに役立ちました。



コマンドライン



最初の講義の1つは私にとって非常に難しいことが判明しました。それまでは、コンソールで作業したことがなかったからです。 多くの資料があり、bashは最も明白な言語ではありませんが、実用的なタスクは少し慣れて、便利なツールとしてコンソールを使い始めるのに役立ちました。



講義の後、チームプロジェクトが続きました。HeadHunterAPIと高度に統合されたSlack for HRを行いました。 プロジェクト中、私たち全員が良い面を見せ、全員がhh.ruで働くという申し出を受け、それを喜んで受け入れて仕事に行きました。

HeadHunterでの仕事の最初の年に、私は母国の学校を助けに行き、学校への新人のインタビューに参加しました。 それは興味深い経験でした-人がどのように考えているかを観察し、安心させ、選択肢を探すのを助け、困難な仕事のために緊張してget迷に陥ることはありませんでした。 結局、インタビューの際に私たちが見ている主なことは考えることです。問題を解決する方法がわからない場合は、質問、理由、前進する必要があり、そこに目を向けると答えに出ます。 もちろん、たとえばO(n)やスタックなどの基本的な知識がなければ、合格することはほとんど不可能ですが、これは思考を構築するための基礎にすぎません。



2016/2017の次の学校で、工学の実践に関する最初の講義を行いました。 公に行うことは簡単ではなく、誰もがそれを知っています。 私たちは社内セミナーを開催しました。このセミナーでは、すべての初心者講師が話す方法を教えられます。 私たちは、正しく立ち、身振りをする方法、話すリズム、聴衆の注意を保つ方法を訓練しました。 トレーニングは、講義の準備とプレゼンテーション自体に大いに役立ちました。 他の人に話すとき、あなたはすべてをより良く、より詳細に、より正確に理解し始めます。 もちろん怖いですが、非常に興味深いです。私はフィードバックを受け取りました。今年は講義がさらに良くなり、さらに多くが来るでしょう!



すでに書いたように、学校教育は2つの段階に分かれています:講義と実際のタスク。

2016/2017年の学校で、プロジェクトのキュレーターになれたことは幸運でした。 プロジェクトのキュレーターはかなり曖昧な立場にあります。ここでは、プロダクトマネージャー、プロジェクトマネージャー、チームリーダーなど、チームで果たす役割を全員が選択します。



プロダクトマネージャー



何よりも彼は製品が最終的にどのように見えるかを知っています。 個々のタスクに優先順位を付けることができます。 何をすべきか、何をすべきでないかという点で決定を下します。



プロジェクトマネージャー



彼は、チームの仕事を組織し、プロセスを整理します-スタンドアップ、レトロ、デモなど。組織の問題を解決するのを助けます。



ティムリッド



彼はチームの作業を内部から組織することに従事しており、製品の技術面を担当しています。 彼はチームのメンバーのアシスタントを務め、技術的な専門知識がなければ、誰に助けを求めるべきかを知っています。



私は2番目の役割を選び、少し最初に、チームの役割をチーム自体に与えました。 私たちのチームは、コードネームがAuditorのプロジェクトに関与していました。 主な目標は、応募者からプログラマースクールへの導入課題のチェックを自動化することでした。 チームには5人のスタッフがいて、私はマネージャーでした:)学校で最も時間を費やした人々の中に顧客がいます。 学校との仕事は開校のかなり前から始まります-これらは講師のリスト、サイトのパフォーマンス、マーケティングサポートなどです。 しかし、応募者のプロフィールを確認し、テストの割り当てと面接を行うには、さらに努力が必要です。 これらの活動を収集し、痛みを分析し、優先順位を付け、別々の段階とタスクに分解して、作業を開始しました。 hh.ruのすべての主要なプラクティス(コードのレビュー、スタンドアップ、タスクの分解と評価、リリース日の個人的な責任、デモ、レトロ)を導入しようとしました。 4週間の反復を伴うスクラムのようなものと、その後のデモがありました。



各デモの後、レトロで改善されたプロセスを行いました。 私の意見では、レトロは開発プロセス全体で最も難しい会議の1つです。 定性的に実行するには、チーム内で完全な信頼が必要であり、同じ波長であり、何かを変更して前進させる準備ができている必要があります。 私たちの最初のレトロIは、良い職場環境、正直に表明された問題の数とそれらを解決する効果的な方法に喜んで驚きました。







本当に成長し、クールな開発者になった人に感謝します。 私のチーム全員が終わり、私たち全員がhh.ruで一緒に仕事をすることは素晴らしいことです!







私たちのプロジェクトは7年間の学校で販売される最初のプロジェクトになりますが、新しいアプリケーションは元の生徒とロボットでチェックされるので、あまり怒っていないし厳しいこともありません))



私はまだ学校にいます。 最初はその中の学生で、男たちとのインタビューを手伝い、講師になり、その後プロジェクトマネージャーになり、今ではキュレーターになっています。 学校は非常に多面的なプロジェクトであり、必要に応じて、開発を進めるのに役立つ膨大な知識と経験を得ることができます。 私はチームリーダーの道を選びました。他の人はテクノロジーを扱う道を選びました。両方の道はプログラマーの学校の基礎を見つけることができます。



新しいセット2017/2018を開始しています。 今年は30人の生徒をお待ちしています。



All Articles