Пътят на яростта: Пътуването на разработчика на таксуване

Мениджърът на компания за развитие на таксуването има два начина да изгради екип. Първият е да се наемат готови „възрастни” и непрекъснато да се създават такива условия за работа, така че те да използват максимално своите умения и опит, да се развиват и в същото време да не влизат в битки. Второто е да се създаде екип от комбинация от новодошли, средни и професионалисти, така че те да общуват, да си влияят, да учат и да растат в компанията. Аз съм против порочния кръг а ла "без опит - без работа - без опит" и не виждам проблем в наемането на начинаещ програмист. Форвард Телеком има дългосрочна стажантска програма, която се е превърнала в трамплин за кариерата на много настоящи служители.

Сега ще ви кажа как виждам пътя на развитие на разработчик на таксуване и в каква последователност трябва да овладеете професионални умения.

1. Научете език за програмиране

Като за начало всеки. Приоритет са Java, Python и JavaScript, но Ruby, Go, C, C++ са подходящи за получаване на основни познания. Как да преподавам? Вземете платени и безплатни курсове; мога да препоръчам обучение от Golang. Ако нивото ви на английски позволява, гледането на чужди видеоклипове е добро допълнително умение.

Пътят на яростта: Пътуването на разработчика на таксуване

2. Разберете концепциите на ОС

Операционните системи са базирани на седем компонента, които трябва да знаете и да можете да обясните принципа на работа:

  • Управление на процеси;
  • Нишки и многонишков код;
  • Socket (софтуерен интерфейс);
  • I/O диспечиране;
  • виртуализация;
  • Съхранение;
  • Файлови системи.

Препоръчвам да вземете основен курс по администриране на Linux. Вторите операционни системи са Windows и Unix.

3. Свикнете с терминала

По аналогия с фобията от празен лист има фобия от празен черен екран с мигащ курсор. Ще трябва да го преодолеете, за да научите как да пишете добри команди в командния ред.
Трябва да знам:

  • Bash и KornShell черупки;
  • Команди find, grep, awk, sed, lsof;
  • Мрежови команди nslookup и netstat.

Пътят на яростта: Пътуването на разработчика на таксуване

4. Мрежа и сигурност

Таксуването е тясно свързано с изискванията за защита на мрежата и данните. Не можете да пишете онлайн услуги, без да разбирате как работи мрежата, така че трябва да научите основните концепции и протоколи: DNS, OSI модел, HTTP, HTTPS, FTP, SSL, TLS. След това, когато срещнете грешка Connection Refused, ще знаете какво да правите.

5. Сървъри

След като изучите принципите на предаване на информация в мрежата, можете да започнете основите на работата на сървъра. Започнете с уеб сървъри: IIS, Apache, Nginx, Caddy и Tomcat.

Следващ в списъка:

  • Обратно прокси;
  • Анонимен прокси;
  • Кеширане;
  • Балансиране на натоварването;
  • Защитна стена.

6. Научете инфраструктурата като код

Смятам, че този етап е един от най-важните. Ще трябва да разберете три широки теми:

  • Контейнери: Docker и Kubernetes
  • Инструменти за управление на конфигурацията: Ansible, Chef, Salt и Puppet
  • Резервно копие: Terraform, облаци.

7. Научете CI/CD

Друго полезно умение за разработчик на таксуване е да може да настрои тръбопровод за непрекъсната интеграция и доставка. В областта CI/CD има инструменти като Jenkins, TeamCity, Drone, Circle CI и други. Спойлер: изучаването на широко използвания Jenkins ще бъде достатъчно в началото.

8. Контрол на софтуера и инфраструктурата

Основната цел е да разберете основите на мониторинга на приложенията. Инструментите в тази област са разделени на три групи:

  • Наблюдение на инфраструктурата: Nagios, Icinga, Datadog, Zabbix, Monit.
  • Мониторинг на производителността на приложенията: AppDynanic, New Relic.
  • LMS: ELK Stack, Graylog, Splunk, Papertrail.

9. Облачни услуги

В близко бъдеще всяко приложение или софтуер ще има аналог в облак. Рано или късно разработчиците се сблъскват с облака, така че прочетете за популярни доставчици на облак (AWS, Google Cloud и Azure) и основите на технологията.

10. Работа с базата данни

Всички текущи проекти използват бази данни и опитът с СУБД и SQL ще улесни започването. Научете се да пишете SQL заявки, използвайте обяснение и научете как работи индексът. Най-лесният начин е да вземете курс. Можете също така да практикувате уменията си за документиране на Postgres и да си играете с репликацията.

11. Подобрете меките си умения

Неочаквано необичайна точка, но не по-малко важна. Като начало бъдете търпеливи. Бързо свиквате със ситуации като „поправете желязото си, вие сте програмист“, но трябва да сте психически подготвени за крайните срокове за стартиране на нови проекти. Ако сте от нула до една година в програмирането и се смятате за Junior, подгответе се за критика и се научете да я приемате, прегледът на кода от ментор често е болезнен процес. Но в същото време задължително умение е способността да защитаваш своята гледна точка и да спориш конструктивно; понякога истината се ражда в спор. Разработчиците никога не спират да учат, практически няма таван в професията, така че способността за учене и ЖЕЛАНИЕТО да научавате нови неща са в основата на вашето развитие.

Пътят на яростта: Пътуването на разработчика на таксуване

Често ме питат кога един начинаещ достига средно ниво и кога може с гордост да се нарече „старши“. Смятам, че моментът на преминаване от ниво на ниво не се определя от броя на отработените години, въпреки че практическите умения са ключов критерий. Точно меките умения често определят скоростта на растеж на разработчика: обучен и усърден начинаещ може да напише висококачествен код на няколко езика и да може да работи в екип само за няколко месеца. Разработчик с 10 години опит може да не е в състояние да решава нестандартни проблеми, да управлява екип и да има едностранчиви умения.

Така виждам пътя на развитие на билинг разработчика, така отглеждаме квалифицирани специалисти в нашия екип на Forward Telecom. Не изглежда да липсва нищо, но винаги съм благодарен за полезните допълнения към темата.

Източник: www.habr.com

Добавяне на нов коментар