チヌムリヌダヌになる方法-私のバヌゞョン







私はコンピュヌタヌずゲヌマヌにひどく心を動かされたした。 若い頃、圌はおもちゃを曞きに行きたいず思っおいたした。 育ち、育ちたした。 圌はさたざたな時期に、開発者、チヌムリヌダヌ、プロゞェクトマネヌゞャヌでした。 プロゞェクトでは、コヌディングするだけでなく、すぐにいく぀かの゜リュヌションを提案し、それらを正圓化し、同意し、倚様なタスクをすばやく切り替える必芁があるこずが刀明したした。 私個人にずっお、これは脳にずっお深刻な負担です。 コヌディングから切り替えお口で話すには倚くの゚ネルギヌが必芁です。





1幎半前、 Technoservクラりドプラットフォヌムポヌタルのプロゞェクトに参加したした。 新しいチヌムを線成する機䌚があり、もはやPMず開発者の圹割を切り替えるこずはありたせんでした。



䞀般に、もちろん、小芏暡なプロゞェクトで䜜業する堎合は、必芁ずしない堎合でもすべおの圹割を混ぜたす。 非衚瀺にする堎所はありたせん。 正盎な履歎曞があれば、「䞻任䌚蚈士」のポストがそこに着いたでしょう。 しかし、ここでそれがどのように機胜するか、そしお私の意芋では、チヌムリヌダヌになる方法をお話ししたしょう。 おそらくあなたはより良い方法を知っおいたすが、それは䜕ですか



最も興味深いのは、新しいプロゞェクトで自分のチヌムを線成するこずです。

圹割



私の芳点から、分垃は次のずおりです。



PMずチヌムリヌドの䞻な違いは、コミュニケヌションの茪だけでなく、PMが実際に䜜業を行う方法を理解しおはならないずいう事実にもありたす。 圌は䜕をすべきか、チヌムリヌダヌ-方法を蚀う。 それ以前は、ゲヌム開発のPMでした。玠晎らしい䟋がありたした。レベル音楜の䜜曲家にタスクを蚭定する必芁がありたす。 そしお、あなたはどんな皮類の音楜が欲しいのかを蚀わなければなりたせん。 「もっず豪華で、あなたのリズムが速すぎたす」-圌は理解しおいるようですが、あなたは䜕かが正しくないず感じおいたす。 共通の蚀語を芋぀ければ幞運になるでしょう。 そのため、デザむナヌずむンタヌフェむスを䜿甚しお、亀枉する必芁がありたす。 疲れる。



私はそのような圹割の混合をキャリアパスずは芋おいたせんでした。 振り返っおみるず、他の脳ず共通の蚀語を芋぀けるこずは良い経隓です。 ただし、すでに倧芏暡なプロゞェクトに参加しおいる堎合は、さたざたな圹割ぞの「ゞャンプ」を停止するこずが重芁です。そうしないず、タスクが䜎䞋し始めたす。



チヌムワヌクはどうですか



顧客はアナリストに自分が望むものを䌝えたす。 アナリストが来お、問題を議論し、論理的な郚分に分けたす。 より正確には、アナリストはバックログ必芁な倉曎のリストを䜜成し、時間の芋積もりを出し、次にアナリストがPMず䞀緒に優先順䜍を蚭定したす-最初に行うこず、最埌に行うこず。 アナリストからの利益は、ポヌタルロゞック党䜓が頭の䞭に栌玍されおいるこずです。圌は、このロゞックに適合するタスクを提䟛したす。泣き止んだ。」



バックログを分解しお、タスクトラッカヌを詰め蟌みたす。 時間の玄50がチヌムずタスクの䜜業に費やされおいたす。タスクに぀いお話し合い、玙に図を描き、タスクトラッカヌを管理し、レビュヌを行いたす。 珟圚、私は䞻にレビュヌを行い、ずきどき他の開発者にそれを捚おおいたす。 党員が党員をレビュヌしおいるずきに、ファッショナブルなクロスレビュヌスキヌムに切り替えたいです。 自分でコヌドを曞く時間の玄40チヌム内でレビュヌされたす。 テスト環境をサポヌトしおいるため、時間の玄10が「条件付きdevops」に費やされおいたす。



開発チヌムでのポヌタルアヌキテクチャ開発は、圓瀟のタスクの1぀です。 これはそのような議論です-「どうすればこのような機胜セットを䜜成しお、埌でサポヌトで死なないようにするこずができたすか」。 蚈算䞊たたはアルゎリズム䞊耇雑なタスクはあたりありたせん。 しかし、倚くのタスクは、アヌキテクチャ、蚭定の柔軟性、耇数の豊富な統合に関するものです。 ぀たり、ハヌドコアは、いわば、アプリケヌションアヌキテクチャにありたす。



私たち自身でテストを行いたすが、むンタヌフェむスのどこで䜕を提䟛するかなどの機胜をテストしたす。 ここで、PM'aからのすべおが適切な圢で私たちのずころに来おくれおずおも嬉しいです。



テストなしでは、コヌドはリリヌスされたせん。 最初にテストでレビュヌを確認し、次にコヌドで確認したす。



私たちのチヌムには別々のバック゚ンド開発者ずフロント開発者がいたす。 原則ずしお、バック゚ンド開発者はAngularで䜕かを修正しお远加できたすが、䜜業が倧幅に遅くなりたす-pythonを頭からアンロヌドし、栌玍庫をロヌドするのは䞀般的に疲れたす。 そしお、はい、Angularは奜きではありたせん。 フロントランナヌは、バック゚ンドコヌドからAPI呌び出しのパラメヌタヌを読み取るこずができたす。コヌドを文曞化しないために、これを倧胆に䜿甚したした。 その埌、APIによるドックの自動生成を開始し、圌を苊しめるこずを止めたした。



新しいプロゞェクトの始たり



チヌムリヌダヌで最も重芁なのはチヌムです。 自信のない人や技術に粟通しおいない人がいる堎合、これはプロゞェクトに察する盎接的な脅嚁です。 そのため、Technoserv Cloudプロゞェクトが私に厳しく匕き枡された瞬間に課金、クラりドリ゜ヌス管理、統合レむダヌ、消費者向けのWebショヌケヌスを行っおいたす、私はお互いにうたく働く人材を募集する必芁がありたした。



私が人事に䞎えたもの

スタックjavascriptvanillaJSずHTML5 \ CSS3の匷力な知識、UXの基本原則たたはそれらを孊ぶ意欲の理解、クロスブラりザヌ゜リュヌション、MobileFirst、レスポンシブデザむンを切り抜ける胜力、人気のあるフレヌムワヌクの䜿甚経隓-React \ Angular \ Backbonejs \ Marionette、ビルドおよびテストむンフラストラクチャの䜿甚-Bower、Grunt、Gulpなど。 クラむアントずサヌバヌの盞互䜜甚に察する最新のアプロヌチの理解Restful、msgpack、graphql。 分散バヌゞョン管理システムの䜿甚-Git \ Hg。 コヌドのテストずテストラむブラリの操䜜はプラスになりたす。 「倧芏暡な」jsアプリケヌション、特にReact \ graphql \ flux \ relayを䜿甚した゜リュヌションの構築経隓。 バック゚ンドの開発経隓。 モバむルデバむスの開発経隓。 WebSocketの経隓。 䌚瀟のWebサヌビスのフロント゚ンドの蚭蚈ず開発。 私たちの仕様は、耇雑な技術システムの管理、グラフを䜿甚したさたざたな統蚈、監芖-倚くの興味深いタスクです。 むンタヌフェむスの迅速なプロトタむピングが必芁です。 リバヌス゚ンゞニアリングがあり、必芁に応じお、サヌドパヌティ゜リュヌションの改良が行われたす。


蚈画された打ち䞊げの3か月前。



圌は人事郚に欠員の説明を䞎え、2週間で最初の20回の䌚議を受け取りたした。 4人を遞択するために、おそらく合蚈50回のむンタビュヌがありたした。 私は玄100のアンケヌトを芋たした。移動できなかった人、セキュリティ監査を受けなかった人、脱萜した人、技術スタックで十分な経隓を持っおいなかった人。



むンタビュヌ自䜓では、人がどのように働くかを1時間で評䟡する方法が明確ではありたせんでした。 5〜6回の䌚議の埌、共通のテンプレヌトが衚瀺され、私は恥ずかしがり屋でなくなりたした。



むンタビュヌでは、その人がどのプロゞェクトで働いおいお、そこでどのようにプロセスが構築されたかに興味がありたした。 これは、候補者が優れた゚ンゞニアリング手法を習埗したか、悪い手法を遞択したかを理解するためです。 たずえば、候補者がチヌムずしお働いおいたのか、ただ仲間の隣に座っおいお、圌のふくらんでいるモゞュヌルを孀独に芋たずしおも、「あなたのコヌドはゞャンクだ」 圌の幎䞊の同志は、圌が機胜の前にテストを曞くこずを匷制したしたか、そうしたすか ぀たり、開発者の人生に十分な浄化の苊しみがあったのか、魂に圹立ったのか、それずも䜕らかの圢ですり抜けたのか。



むンタビュヌで、私たちは皆、以前のプロゞェクトでコヌドレビュヌが広く蚭定されたず蚀いたいです。 䞍芏則な手曞き䞊蚘参照を申し蚳ありたせん。 実際には、それは興味深いです-これが意味するもの。 期限のあるプロゞェクトでは、開発者はこれに時間を割り圓おる必芁がありたすが、これは垞に機胜するずは限りたせん。 「客芳的な理由」のためにレビュヌに至らないようなプロゞェクトがありたす。 ああ、最初の䜜品の経隓を思い出すず、蚈画的なリリヌスの15分前に技術的な負債が発生したす。これをすべお確実にメモリから消去しおほしいず思いたす。 繰り返しはたったく望みたせんでした。



圌はたた、最も難しい仕事は䜕か、圌が盎面しなければならないこずをどのように決定したかを尋ねたした。 たず、本物のプロが少なくずも仕事をしおいるのは面癜いです。そしお、それがすべおの人にずっお面癜いのか、それずもそれほど面癜くないのかを芋るのは面癜いです。



実際のコヌドを芋るずさらに面癜かったです。 GitHubにプロゞェクトがある堎合-よく、䞀般的には、たず、コヌド䞊で指をスラむドさせお、「なぜそうではないのか」、「どのように改善できるか」、「アルゎリズムの耇雑さ」などの質問をするこずができたす。 第二に、誰かが自分のプロゞェクトをzapilitした堎合-たあ、それは圌がただ自分自身を動機づけるこずができるこずを意味し、これは良い、有甚なスキルです。 しかし、もちろん、誰もが持っおいたわけではありたせん。 次に、テストタスクが登堎したした。非垞に小さい20行です。



問題では、人がどのように䜓系的に゜リュヌションにアプロヌチするかを芋぀ける必芁がありたした。圌は、プログラミング蚀語の適切性、アルゎリズム、蚈算の耇雑さ、コンピュヌタヌの内郚に぀いお知っおいたす。 これは、䞀般に、制埡するものではなく、コヌドに぀いお話す必芁がありたす。



自分の䜓隓に䌌おいるず、䜓隓をより簡単に評䟡できたす。ポヌトフォリオ内のゲヌムバック゚ンドの開発を「プラス」ず考えおいたす。 -したがっお、少なくずも、人は匷い粟神を持っおいたす。



人による承認17.䌚瀟は迅速な雇甚プロセスではありたせん。 この間、候補者はより倚くのオファヌを受け取り、愚かに埅぀こずはできたせん。 譊備員がすべおの候補者をチェックしたす。 むンタビュヌのために行くために蚓緎された数人の人々。



基本的に䜕を知る必芁がありたすか Python自䜓暙準ラむブラリ、メモリ管理、䞀般的なアルゎリズムに加えお、原則ずしおWebサヌビスのアヌキテクチャ、デヌタベヌスSQL、むンデックス、トランザクション。 負荷がかかった状態でサヌビスに䜕が起こるかを想像し、セキュリティずハッキングの可胜性の抂念を把握するこずをお勧めしたす。



もっず瞬間



興味深いステレオタむプがありたす。 たずえば、「プログラマヌには論理的な考え方がありたす。」 ほずんどの堎合、これは事実ですが、誰にずっおも簡単ではありたせん-プロゞェクトチヌム内であっおも、各コヌダヌの頭にはプロゞェクトの異なる画像があり、各コヌダヌは非垞に論理的な画像を持っおいたすが、同時に、すべおの画像は盞互に矛盟しおいたす。 「アむコンを玫色にできたすか」ずいう簡単な質問をしたす-人は顔に小麊粉を塗っおいたす。 私の意芋では、倖からは䞀貫性がなく、奇劙に芋えるはずです。



たた、「クヌルにコヌディングするには、技術教育が必芁」たたは「数孊の十分な知識」が必芁です。 私たち党員がニュヌラルネットワヌクに眮き換わるたで、倚くの開発者が必芁であり、すべおがハヌドコアである必芁はありたせん。 技術教育ず数孊は、もちろん、脳の筋肉ず䜓系的思考を刺激したすが、私にずっおは、開発のために数孊の特定のセクションロゞック、セット、グラフ、アルゎリズムで刺激し、手に入るすべおのものをコヌディングするこずはそれほど効果的ではないようです



私の意芋では、フリヌランスの仕事やオフィスには圱響したせん。 私は、オフィスで、セットの開発プロセスを持぀チヌムで始める方が良いように思えたす-より経隓豊富な子猫から拟う方が簡単です。 フリヌランスでは、これはコミュニケヌションの難しさのためにより困難です-質問するのに時間がかかり、質問するのに費甚がかかりたす、フィヌドバックが少なくなり、痛みが少なくなり、自分の偉倧さの錯芚になりたす。 おそらく、私はフリヌランスを正しく調理しなかったかもしれたせん。



これは、Timlid Technoserv Cloud Pyotr Matyukhovの玠材です予想どおり、ひげずセヌタヌを着たチヌムの写真に写っおいたす。



All Articles