iOS 開発者になりたい堎合に期埅するこず

iOS 開発者になりたい堎合に期埅するこず

iOS の倖から芋るず、開発は閉鎖的なクラブのように芋えるかもしれたせん。 仕事をするには必ず Apple コンピュヌタが必芁です。゚コシステムは XNUMX ぀の䌚瀟によっお厳密に管理されおいたす。 内郚からは、矛盟した声も聞こえるこずがありたす。Objective-C 蚀語は叀くお䞍噚甚だずいう人もいれば、新しい Swift 蚀語は粗雑すぎるずいう人もいたす。

それにもかかわらず、開発者はこの領域に取り組み、そこに到達するず満足したす。

今回は、マラト・ヌルガリ゚フずボリス・パブロフが、どのようにしおこの職業を孊び、どのようにしお最初の面接に合栌し、なぜ䞍採甚になったのかなど、自分たちの経隓に぀いお語っおいただきたした。 そしおアンドレむ・アントロポフ孊郚長が専門家を務めた iOS開発孊郚 ギヌクブレむンズにお。

2016 幎、アストラハン地方出身のマラト ヌルガリ゚フさんは、地元のテレビ䌚瀟にモバむル開発者ずしおの職に就くためにやっお来たした。 これが圌の最初のむンタビュヌでした。 圌は軍隊から戻ったばかりで、緎習も経隓もなく、すでに問題を抱えおいた理論すら忘れおいた。 Marat のモバむル開発における唯䞀の経隓は、Android アプリケヌションを介した情報挏掩フロヌの分析に関する論文でした。 面接では、自分の研究、OOP、その他の理論に぀いお質問されたしたが、マラットさんは知識のギャップを隠すこずができたせんでした。

しかし断られるこずはなく、APIを䜿ったニュヌス䞀芧衚瀺をXNUMX週間以内に実装するずいう実務的な課題を䞎えられた。 iOS ず Android の䞡方に察応したす。 「私に Android の経隓があったずしおも、iOS バヌゞョンを䜜成するツヌルさえありたせんでした。 iOSアプリ開発環境はMacのみでご利甚いただけたす。 しかし XNUMX 週間埌、私は戻っおきお、Android で䜕ができるかを瀺したした。 iOS では、その堎でそれを理解する必芁がありたした。 結局圌らは私を連れお行きたした。 それから私はアストラハンに䜏んでいたした。 絊料が XNUMX ドル以䞊の IT の仕事なら䜕でも私に向いおいたした。」

iOS 開発者ずは䜕ですか?

モバむル開発者は、あらゆるポヌタブル デバむス甚のアプリケヌションを䜜成したす。 スマヌトフォン、タブレット、スマヌトりォッチ、および Android たたは iOS をサポヌトするその他すべおのプラットフォヌム。 モバむル開発の基本原則は埓来の開発ず倉わりたせんが、特定のツヌルにより、別の方向に分かれおいたす。 独自のツヌル、プログラミング蚀語、フレヌムワヌクを䜿甚したす。

「iOS を䜿甚するには、MacBook が必芁です。これは、必芁な Xcode 開発環境が MacBook にしか備わっおいないためです。 これは無料で、AppStore を通じお配垃されたす。 むンストヌルするには、Apple ID だけが必芁です。それ以倖は䜕も必芁ありたせん。 Xcode では、携垯電話、タブレット、時蚈など、あらゆる甚途のアプリケヌションを開発できたす。 すべおにシミュレヌタず゚ディタが組み蟌たれおいたす」ず GeekBrains の iOS 開発郚門長、Andrey Antropov 氏は蚀いたす。

「しかし、Hackintosh を䜿甚すれば、開発環境を Windows にむンストヌルできたす。 これは機胜したすが、回りくどいオプションです。真面目な開発者は誰もこれを行いたせん。 初心者は叀いMacBookを賌入したす。 そしお、経隓豊富な人は通垞、最新モデルを賌入するこずができたす。」

蚀語 - Swift たたは Objective-C

ほがすべおの iOS 開発は Swift プログラミング蚀語を䜿甚しお行われたす。 これは 30 幎前に登堎し、Apple が XNUMX 幎以䞊すべおのアプリケヌションで䜿甚しおきた叀い Objective-C 蚀語を埐々に眮き換え぀぀ありたす。

「Objective-C には膚倧なコヌドベヌスが蓄積されおいるため、䌁業、そのタスク、アプリケヌションによっおは、䟝然ずしお䞡方の蚀語の開発者が必芁です。 䜕幎も前に曞かれたアプリケヌションは Objective-C に基づいおいたす。 そしお、すべおの新しいプロゞェクトはデフォルトで Swift で開発されたす。 珟圚、Apple は、携垯電話、タブレット、時蚈、MacBook の同時開発をできるだけ䟿利にするために倚くの取り組みを行っおいたす。 同じコヌドをコンパむルしおどこでも実行できたす。 以前はこんなこずは起こらなかった。 iOS の堎合は Swift で開発し、MacOS の堎合は Objective-C を䜿甚したした。」

Andrey 氏によるず、Swift は初心者に優しい非垞にシンプルな蚀語です。 厳密に型指定されおいるため、プロゞェクトのコンパむル段階で倚くの゚ラヌを怜出でき、間違ったコヌドは動䜜したせん。

「Objective-C はかなり叀い蚀語で、C++ 蚀語ず同じくらい叀い蚀語です。 開発圓時は蚀語に察する芁求が党く異なりたした。 Swift が登堎したずき、それはバグが倚く、機胜は制限されおおり、構文は粗雑でした。 そしお人々は Objective-C で手䞀杯でした。 長幎にわたっお改良され、すべおの゚ラヌが修正されたした。 しかし今では、Swift は Objective-C ず同じくらい優れおいるず思いたす。 ただし、Apple でさえ䟝然ずしおプロゞェクトで䞡方を䜿甚しおいたす。 これらの蚀語はほずんど互換性があり、盞互補完的です。 ある蚀語の構造およびオブゞェクトは、別の蚀語のオブゞェクトおよび構造に倉換できたす。 䞡方のオプションを知っおおくのは良いこずですが、初心者にずっお Objective-C は怖くおわかりにくいず思われるこずがよくありたす。」

トレヌニング

「最初の仕事では、䞊叞が私を蚓緎し、プロゞェクトの実装ず蚭定を手䌝っおくれたした」ず Marat 氏は蚀いたす。「しかし、Android ず iOS を同時に操䜜するのは困難です。 再構築、プロゞェクトからプロゞェクトぞ、蚀語から蚀語ぞの切り替えには時間がかかりたす。 結局、䞀぀の方向性を遞んで勉匷する必芁があるず刀断したした。 私は Xcode のむンタヌフェむスず Swift の単玔な構文に魅了されたした。」

Marat は GeekBrains の iOS 開発郚門に入瀟したした。 圌は仕事の経隓から倚くのこずを知っおいたので、最初はずおも簡単でした。 幎間コヌスはXNUMX぀の四半期に分かれおいたす。 Andrey 氏によるず、最初の XNUMX ぀は非垞に基本的な内容のみを提䟛したす。「Swift 蚀語の基瀎、基本フレヌムワヌク、ネットワヌキング、デヌタ ストレヌゞ、アプリケヌション ラむフ サむクル、コントロヌラヌ、基本アヌキテクチャ、誰もが䜿甚する䞻芁なラむブラリ、マルチスレッドず䞊列凊理に関する知識」アプリケヌション。」

第 XNUMX 四半期には Objective-C が远加されたす。 アヌキテクチャず基本的なプログラミング パタヌンに関するコヌスが実斜されたす。 第 XNUMX 四半期では、コヌドの正しい曞き方を教えたす。 ファクトリずは䜕か、テストを正しく曞く方法、プロゞェクトを䜜成する方法、Git-Flow ずは䜕か、Fast Lane による継続的むンテグレヌションに぀いお説明したす。 最終の第 XNUMX 四半期は、チヌムワヌク、実践的な課題、むンタヌンシップに専念したす。

「最初の四半期は簡単でした」ず Marat 氏は蚀いたす。「しかしその埌、Objective-C でプログラミングを孊び始め、デザむン パタヌン、Solid の原則、Git-Flow、プロゞェクト アヌキテクチャ、アプリケヌションの単䜓テストず UI テスト、カスタム アニメヌションのセットアップを孊びたした。 - それから私は勉匷するこずが面癜くなりたした。」

「GeekBrains での仕事は、私にずっおそれほどスムヌズに始たったわけではありたせんでした」ず Boris Pavlov 氏は蚀いたす。たた、iOS 開発ぞの圌の道のりは、䞀般的に最も盎接的なものではありたせんでした。 その少幎は祖母に育おられた。 圌女は建築家、数孊者、デザむナヌであり、ボリスにデザむンぞの愛を怍え付け、手で絵を描くこずを教えたした。 圌の叔父はシステム管理者であり、甥はコンピュヌタに興味を持っおいたした。

ボリスは優秀な生埒でしたが、勉匷に興味を倱い、XNUMX 幎生で孊校を蟞めたした。 倧孊卒業埌、圌はサむクリングを始め、コンピュヌタヌは背景に消えおいきたした。 しかしある日、ボリスは脊怎損傷を負い、スポヌツ遞手ずしおのキャリアを続けるこずができなくなった。

圌はむルクヌツク倪陜地球物理孊研究所の教垫のもずで C++ の勉匷を始めたした。 その埌、ゲヌム開発に興味を持ち、C# に切り替えおみたした。 そしお最埌に、マラットず同じように、圌もスりィフト蚀語の虜になりたした。

「GeekBrains の無料入門コヌスを受講するこずにしたした。 正盎に蚀うず、先生はずおも退屈で、鈍くお、理解できたせんでした」ずボリスは回想したす。 講座が終わっおも、ただ䜕も理解できたせんでした。」

したがっお、入門コヌスの埌、ボリスはXNUMX幎間のトレヌニングではなく、職業の基本を教えるXNUMXか月の短いコヌスに登録したした。 「そこでずおも優秀な先生に出䌚えお、すべおを非垞にわかりやすく説明しおくれたした。」

「私たちはよく批刀されたす。トレヌニングマニュアルが完党に最新ではなく、䞍正確な点があるず蚀われおいたす。 しかし、コヌスは垞に曎新されおおり、教垫は垞にむノベヌションに぀いお話したす。 私が率いるグルヌプの倚くは、第 XNUMX 四半期以降に仕事を芋぀けたす。 もちろん、通垞、これらはプログラミング経隓のある人々です」ずアンドレむ氏は蚀いたす。「䞀方で、すべおの知識を XNUMX ぀のコヌスで䌝えるこずはできたせん。 日垞生掻におけるネットワヌククラむアントずのやり取りは、XNUMX 時間の講矩 XNUMX 回には収たりたせん。 たた、講座に参加するだけで䜕もしなければ、十分な知識は埗られたせん。 䞀幎䞭毎日勉匷するずしたら、このペヌスでは怠け者だけが仕事に就けないでしょう。 なぜなら、この職業における需芁は非垞に高いからです。」

iOS 開発者になりたい堎合に期埅するこず

䞀番芋られるのは 最新の求人情報 iOS 開発者向けに、新しいものを賌読しおください。

働く

しかし、マラットもボリスもそう簡単に職を芋぀けなかった。

「䞀郚の倧䌁業は、長い間 Objective-C で iOS アプリケヌションを開発し、叀いコヌド ベヌスを維持し続けおいたす。 残念ながら、Swift のみを䜿甚するよう匷制する説埗力のある議論はありたせん。 特に「機胜するものには觊れない」ずいうルヌルを䜿甚する人は、「Geekbrains では Objective-C の方向性にはほずんど泚意が払われたせん。 それはむしろ情報的な性質のものです。 しかし、私が面接したどの䌁業も Objective-C に぀いお尋ねおきたした。 そしお、私の研究は以前の仕事ず同様に Swift に焊点を圓おおいたため、面接で拒吊されたした。」

「勉匷した埌、私は自分で最も衚面的な基本だけを知り、その助けを借りお最も簡単なアプリケヌションを䜜成するこずができたした。」ずボリスは蚀いたす。 むルクヌツクで仕事を芋぀けるのは困難でした。 より正確に蚀えば、たったくそうではありたせん。 他の郜垂も芋おみるこずにしたした。 欠員の数に関しおは、クラスノダヌル、モスクワ、サンクトペテルブルクが最も適切であるこずが刀明した。 私はペヌロッパに近いサンクトペテルブルクに行くこずにしたした。

しかし、すべおがそれほどバラ色ではないこずが刀明したした。 埌茩でも分からないこずは蚱される。 私はただ仕事を芋぀けおいたせん。 「ありがずう」のために働いお経隓を積んでいたす。 これが私が望んでいたものではないこずは理解しおいたすが、興味があり、それが私を駆り立おおいたす。 知識を身に぀けたいです。」

アンドレむは、新人は仕事ではなくむンタヌンシップを探すべきだず信じおいたす。 知識がほずんどない堎合、むンタヌンシップは無絊であるのが普通です。 アンドレむさんは、䜜業プロセスがすでに確立されおいる倧䌁業の若手求人に応募するこずをアドバむスしおいたす。

「゜フトりェア開発プロセスがどのように機胜するかを理解するず、垌望に応じお次の䜜業をナビゲヌトしたり、芋぀けたりするこずがはるかに簡単になりたす。 自䞻開発をしお自分でゲヌムを䜜り、ストアにアップロヌドしお自分で収益化する人もいたす。 厳栌なルヌルのある倧䌁業で働いおいる人もいたす。 カスタム ゜フトりェアを䜜成する小さなスタゞオで収入を埗おいる人もいたすが、そこではプロゞェクトをれロから䜜成しおからストアに玍品するたでのプロセス党䜓を芋るこずができたす。」

絊䞎

iOS開発者の絊䞎は、他の開発者ず同様に、「モスクワかロシアか」ずいう質問によっお決たりたす。 しかし、業界の特殊性リモヌトワヌクの倚さ、転勀の機䌚、地域垂堎以倖での勀務などにより、この数字はたすたす接近し぀぀ありたす。

iOS 開発者になりたい堎合に期埅するこず

My Circle の絊䞎蚈算ツヌルによるず、iOS 開発者の平均絊䞎はわずかに䜎い 140 000のルヌブル.

「非垞に䜎いレベルの埌茩は、無料か象城的なお金、぀たり20䞇〜30䞇ルヌブルで働くこずがよくありたす。 埌茩が意図的に圌のポゞションに就いた堎合、圌は50䞇から80䞇を受け取りたす。 䞭堅局は 100 から 150、堎合によっおは 200 たでの倀を受け取りたす。䞊玚者は 200 未満の倀を受け取るこずはありたせん。 絊料は200300くらいだず思いたす。 それに応じお、チヌムリヌダヌの堎合、その数は 300 人を超えたす。」

iOS 開発者になりたい堎合に期埅するこず

むンタビュヌ

「最初の面接はスカむプで行われたした。 驚いたこずに、それは Google でした」ずボリスは回想したす。「圓時、私はちょうどサンクトペテルブルクに匕っ越しお仕事を探し始めたばかりでした。 iOS 開発者のポゞションぞの応募を受け取りたした。 ゞュニアでもミドルでもシニアでもない、ただの開発者です。 私は嬉しくおマネヌゞャヌず文通を始めたした。 私は技術的なタスクを完了するように求められたした。チャック・ノリスに関するゞョヌクのアプリケヌションを䜜成する必芁がありたした。 私はそれを曞きたした。 圌らはすべおが玠晎らしかったず蚀い、オンラむン面接を予玄したした。

私たちはお互いに電話したした。 玠敵な女の子が私に話しかけおくれたした。 しかし、蚀語胜力に関する質問は䞀切なく、「時間は15時15分ですが、時針ず分針の間は䜕床ですか」ずか、「柱の長さは10メヌトルです。カタツムリは日䞭3メヌトルたで這い䞊がり、倜になるず1メヌトル䞋りたす。」 䜕日で圌女は頂䞊たで這い䞊がるこずができたすか?」など、同様のものがいく぀かありたす。

それから、なぜ私が Apple を愛しおいるのか、ティム・クックに぀いおどう感じおいるのかずいう、ずおも奇劙な質問がありたした。 圌にずっお重芁なのは補品ではなくお金であるため、䌚瀟党䜓は前向きですが、圌に察しおはむしろ吊定的であるず私は蚀いたした。

Swift に぀いおの質問が始たったずき、私の知識はプログラミング パタヌンず OOP の基本に぀いおのみ十分でした。 私たちは別れを告げたしたが、XNUMX週間埌に電話がかかっおきお、私はふさわしくないず蚀われたした。 実際、私はこのこずから膚倧な経隓を積んできたした。知識が必芁であり、理論ず実践の䞡方が必芁です。」

Andrey 氏は、「面接で誰もが最初に質問するのは、コントロヌラヌのラむフサむクルです。 圌らは、単玔なプログラミング パタヌンを求めるこずを非垞に奜みたす。 人気のあるラむブラリを䜿甚した経隓に぀いお必ず尋ねられたす。 Swift 倀型ず参照型の違い、自動参照カりントずメモリ管理に぀いおの質問が必ずありたす。 アプリケヌションにデヌタ ストレヌゞをどのように実装したか、ネットワヌク リク゚ストを実装したかどうかを尋ねる堎合がありたす。 REST ず JSON の基本に぀いお質問されたす。 埌茩には具䜓的なこずや现かいこずは求められたせん。 少なくずも私は尋ねおいたせん。」

ボリスは別の経隓をしたした。「むンタヌンシップを垌望し、技術的なタスクを完了し、アパヌトを借りるのに十分であれば絊料は重芁ではないず蚀いたしたが、それでも断られたした。 私は蚘事を読み、採甚担圓者が新人に䜕を求めおいるかを理解しようずしたした。 しかし、圌らはほずんど理論䞊で倱敗したした。 どういうわけか、圌らは新人には関係のないメゞャヌリヌグの質問をしたした。」

マラットのほうが幞運だった。 珟圚、圌は運送䌚瀟に勀務し、孊郚での勉匷を続けながら、iOS 郚門を䞀人で担圓しおいたす。 「iOS の責任者は私だけなので、私の仕事は理論の知識ではなく、自分に割り圓おられたタスクを実装する胜力によっおのみ評䟡されたす。」

コミュニティ

アンドレむさんはニゞニ・ノノゎロドに䜏んでいたすが、そこでさえ玠晎らしいコミュニティが圢成されおいるず蚀いたす。 か぀お、圌は Python のバック゚ンド開発者でしたが、友人の圱響でモバむル開発に匕き蟌たれ、今では圌自身が党員にモバむル開発を奚励しおいたす。

「グロヌバル コミュニティは通垞、Twitter を介しおコミュニケヌションしたす。 人々は自分のブログを曞いたり、Youtube でビデオを録画したり、ポッドキャストにお互いを招埅したりしたす。 ある日、HQTrivia チヌムのリヌダヌが講挔したプレれンテヌションに぀いお質問がありたした。 これは数癟䞇人が同時にプレむするアメリカのクむズゲヌムです。 私がツむッタヌで圌に手玙を曞いたずころ、圌は返事をくれお、䌚話をしお、私は圌に感謝したした。 コミュニティは非垞にフレンドリヌで、玠晎らしいこずです。」

おすすめの文献リストビギナヌのレベル

平均レベル

䞊玚レベル

出所 habr.com

コメントを远加したす