Web開発者になるにはどうすればよいですか?

最近のインタビューをきっかけに金曜日に、コミュニティから議論してアドバイスを得るためにデザイナーからWeb開発者に移行する計画について、より詳細なストーリーを公開しています。 私は自分で書くだけで、誰も魂の上に立ったり、テキストを読んだりしません。リトレーニングの成功に関する他の記事の場合のように、HRマネージャーの隠れたサブテキストやトリックはありません。



プロローグ



Habréでは、「タクシー運転手からプログラマまで9か月で」というトピックに関する記事をよくスリップします...しかし、この道を克服するだけならどうでしょうか。 突然うまくいかないのですか いずれにせよ、私は自分自身について、自分が何を望んでいるのか、なぜこのように決めたのかについて少し話したいと思います。 これは別のサクセスストーリーではありませんし、決してそうなることもありませんが、これらのラインで自分自身を見て、恐れや言い訳をして、何かを変えることに決めた人がいると思います。 すでに行われたことと計画されていることについて話し、その分野の経験豊富な専門家からフィードバックをもらいたいと思います。 それでは、順番に行きましょう。



私自身について少し



アナトリー、27歳

市:スモレンスク

婚status状況:既婚、娘と住宅ローンを持っている

大学と専門:NRU "MEI"、エンジニアASOIU

兵役:無線傍受Osnaz GRU

現在の職業:設計エンジニア2カテゴリー



プログラミングでは、私は初心者ではありません。背中の後ろに特定の背景があります。 教育は高校のBASICとPascalから始まり、Delphi、C / C ++、PHP、JavaScriptがありました。 今、私の主な言語は囲isです。 そしてもちろん、マイクロコントローラー用のC。



4年目と5年目の間、彼はアメリカで4か月間、Work and Travelの無料労働プログラムの下で過ごしました。そこでは、話された英語を少し引き締め、たくさん旅行しました(シリコンバレーで撮影)。 大学卒業後、彼はドラフトベースで陸軍に入り、そこで無線傍受ポストを務め、VBAでゲームを書いた。



私は研究所で練習のために勉強している間に工場に着きました、そして、軍隊の後、私はそこに戻りました、それは私のキャリア成長に良い影響を及ぼしました。 私の現在の仕事には、電気回路の設計からテキスト文書の作成まで、ガス分析デバイスの開発とメンテナンスの全サイクルが含まれます。 タスクの範囲は非常にぼやけており、一度にすべてを行います。 これは、センサーからテレメトリー収集サーバーを作成および保守する最初の経験が現れた場所です。 Goをバックエンドの言語として、Vue.jsをフロントエンドの言語として選択しました。



ウェブ上の私の道



学生時代から、私は少し(主に趣味として)既製のエンジンでサイトを作成/完成/サポートし、PHP用にさまざまなパーサー(写真、製品、記事、コメント)を書いてきました。 これで、最近までウェブに関する私の知識は終わりました。



昨年、Goを作業タスクの言語として選択しました。TCPを介してセンサーからテレメトリを収集するためにサーバーを上げる必要がありました。 知り合いは成功し、私は問題を素早く解決することができ、研究をさらに掘り下げ始めました。 Mail.ruからCourseraまでの2つのコースを経て、2つの適用された問題を解決しました。そのうちの1つはHerokuに関連し、今日に役立ちます。仕事中のビデオファイルへのアクセスをブロックしているため、ビデオホスティングサイトからビデオが提供されます。



また、1年前、彼はブラウザベースのio-toy JS(Phaser)+ Go on web socketsを書き始めました。 いくつかのタイプのゲーム(デスマッチ、キャプチャーザフラッグ、ラグビー)を追加し、プレイヤーをそれぞれ10人の小さな部屋に分割することを意図して、古いBiPlanesブルートゥースおもちゃのアイデアとグラフィックを取りました。







ボット用にAIを整理する方法を長い間考えていましたが、思い付かず、残念ながら作業を中断しました。 今、別のプロジェクトで忙しく、さらにそれについて。



課題は、屋外照明用の自動化された自動制御システムを開発することでした。これには、デバイス自体の設計、管理用のサーバーおよびクライアント部品の作成が含まれます。 マイクロコントローラー用のソフトウェアを作成するためのボードを開発および組み立てた後、彼は見習いの同僚を引き取り、その間にサーバー側を引き継ぎました。 サーバータスクには、SPAのTCPおよびREST APIサポートを介したデバイスパラメーターの定期的なポーリングが含まれます。 クライアント部分については、Vueは管理パネルを空白にし、JWTを介してサーバー部分に接続し、両方の部分の機能を徐々に増やしていきました。



この段階では、次のようになります(その場合、2層のボードがあります)。



















現在、関係の解決、投資、およびシステムのさらなる開発について交渉中です。



その過程で、SQLの知識が本当に不足していることに気付きました。2つのテーブルを結合するためのクエリがどのように機能するのか理解できませんでした。 私はこの分野で自分の知識を向上させる場所を探し始めました。私は理論を少し読んだり調べたりして、SQL-EX Webサイトで練習を始めました。 結果に非常に満足しています。80を超える問題を解決し、基本的な証明書を受け取りました。SQLでは、もう少し自信があります。 拡張証明書のタスクを徐々に解決する予定です。



現在の仕事は、広大な国の広大な地域への豊富な出張を提供しています。 プロの向き直しのアイデアにうんざりした瞬間から、私はモスクワやサンクトペテルブルクを通過して、何らかの形でウェブプログラミングに影響を与えるあらゆる種類のミタップに乗るように出張を調整し始めました。



会議では、発音されるすべてのものを聞いて掘り下げ、新しい知り合いを作り、この文化に没頭するよう努めています。 率直に言って、十分な知識と経験はありませんが、人間の脳は聞いたものすべてが遠い引き出しの中に置かれているので、いつかは役に立つと確信しています。 ここで、Slerm-2へのオンラインアクセスにサインアップしました。DevOpsエリアで少しやりたいと思っています。



転職を決めた理由



要するに、私は退屈していました。 昨年、興味深いプロジェクトや新しい機器の開発はありませんでした。 すべての作業はなんとなく取るに足らないものであり、私の開発は停止しました。 私は仕事をし、最終的には有用になりたいです。



工場で働いていると、この世界に遅れをとっています。 いくつの現代のテクノロジーが私たちを追い越しますか? 私がGitを使用している部門で唯一の場合、何と言えますか? 「プログラマー」と呼ばれる残りの従業員は、プログラムを別のフォルダーに保存し、「必要な」バージョンを定期的に失います。



もちろん、給与についての段落があるはずで、これは一般的に私にとって痛い点です。 そして、それは特定の金額の問題でさえありません(私の給与は非常に普通だと思います-この地域の平均は約2つです)が、私の妻はもっと稼いでいます...私は少し幸せで、それが私にどのように影響するか想像できますか? コメントはありません。



そして最も重要なことは、ITエリアは開発に無限の機会を提供しますが、工場ではこの開発は非常に控えめであり、解決すべきエリアとタスクの範囲は非常に狭く、あなたは事実上単一の仕事の場所に縛られています。 機能し、使用できる実際の製品を作成したいのですが、 これは官僚主義と安全性に関するGOSTを読むことだけではありません。



私の計画



要するに、勉強、勉強、そしてまた勉強し、恐れることをやめ、新しい仕事を探して履歴書を送り始めましょう。 ハードウェアタスクとバックエンドプログラミングタスクを徐々に混ぜながら、移行をスムーズにしようとしています。



最大の問題は、助言を求めたり、ウェブについて話すだけのメンターが不足していることです。インターネット上の記事からすべてをsc索しなければなりません。 原則として、今では、より有能なプログラマーの指示の下で、関連する経験を得るためのアイデアに取り組む準備ができています。



近い将来、Martin Kleppmanの著書 "Highly loaded applications"を読むことに多くの時間を費やし、それでも最後まで読み続ける予定です。これは、Webで何が起こっているかについての私の認識に良い影響を与えます。 そして、これは最近の記事の背景に対するトリックではありません、インタビューは1か月前に行われました、私はそれを本当に読みました...私はそれをGo。コース教師であるMail.ruのGolangコース教師Vasily Romanovとのインタビューから知りました。 なぜ私は言い訳をしているのですか?!



私の恐怖



仕事を変えたいと思う人のほとんどは、必ずしも新しい分野ではなく、そのような恐れを持っていると確信しています。 ここでは、いわゆる偽者症候群が部分的にあなたのために語っています、あなたはこれを理解する必要があります。



恐怖#1-新しい仕事に移行した経験が少ない。

はい-十分ではありません、はい-それ以上あればいいのですが、経験は利益です:特定の技術を知らないかもしれませんが、誰も人生経験と発展する欲求をキャンセルしませんでした。 一般に、私は私の生涯の経験がユニークであると考えています:はい、軍隊で、衛星を使って、 空軍Oneに搭載された冷蔵庫の数に関する情報をフィルタリングしました。 まあ、もちろん、それだけではありません...しかし、物語はこれについて沈黙しています。



恐れ#2-企業にはミドル/シニア/リードが必要だが、6月は必要ない

はい、欠員に関する統計はこれを裏付けていますが、6月には欠員があり、これが主なものです。 そして誰が簡単だと言ったのですか? 検索する必要があります。



恐怖#3-新しい地域での6月の給与は現在よりもはるかに低くなりますが、家族を養う必要があります

この恐怖は基本的なものです。 一般的にITの料金が高くなっているため、これを部分的に補償したいと考えています。 何らかの給与の格下げに同意する必要があるかもしれないことは理解していますが、特に私の妻が最近法令を去り、2年のハンガーストライキの後ゆっくりと立ち上がっているので、より大きな見通しのために決定する準備ができています。 彼女はこれで私をサポートし、先日彼女は言った:「しかし、動きましょうか。」 そして、ガス分析器だけを開発した経験があり、どこに行けばいいですか?! これは、キャリアの変化をさらに促進します。



恐怖#4-最初の仕事はリモートであってはならない

リモートワークの組織における最新の技術では、初心者でも経験者でも問題はまったくないと考えています。 私にとって、私の状況では、バックエンド開発者を必要とする可能性のある会社はほとんどありません。名刺をリベットする小さなWebスタジオしかないので、事務で最初に経験を積むことができます。 ここで、モスクワまたはミンスクでのインターンシップのための一時的な移転の選択肢を検討する準備ができています。 どうやらこれが実践されています。



恐怖#5-私の年齢は6月にはあまり適さない

さて、ここでは、昨日の生徒よりももう少し多くの経験があることを願っています。そして、残りの部分を自分の仕事で補わなければなりません。



私の目標



もちろん、最もグローバルな目標は、リモートバックエンド開発者になり、静かな部屋を借りて好きなことをすることです。 はい、私はピンクのメガネのプリズムを通して世界を見ていることを理解していますが、私はこれが欲しいと信じています。 スモレンスクはモスクワとミンスクの間にあり、それぞれから車で4時間のところにあります。これは、工場の入り口に接続していなければ、いくつかの会議の場合に非常に便利です。



そして、これまでのローカルターゲットは次のようになります。



1.「高負荷のアプリケーション」という本を読んでください。

2.履歴書とインタビューの送信を開始します。

3.その他の練習...ゲームの作業を再開します。

4. SQL-EXからの問題の解決を続け、クエリの最適化の理解を開始します。



おわりに



ストーリーが乱雑ではないことを願っています。コメントと提案であなたのコメントを待っています。 ところで、明日はIT分野での最初のインタビューに行きます。



関連リンク:



1. 外科医から開発者へ:40歳で職業を変えるには?

2. 9か月でメインの仕事を中断することなく、初心者からソフトウェア開発者になった方法

3. タンボフのタクシー運転手と比較した、ITに参入した私の経験

4. 「私は3年間詐欺師症候群と闘ってきました」-プログラマーのための10の質問、問題7



All Articles