SlideShare a Scribd company logo
Как се става програмист от нулата?
Всичко, което трябва да знаеш на старта
Влез в света на програмирането
1
Софтуерен университет
https://softuni.bg
Д-р Светлин Наков
Съосновател, ръководител иновации
Софтуерен университет & СофтУни
https://nakov.com
Front-end, Back-end, Testing, Game Dev, AI, …
Видове програмисти
3
 Front-end developer – UI / UX
 Back-end developer / database / cloud developer
 Full stack developer – back-end + front-end
 QA automation developer – software developer in test
 Machine learning / AI developer
 Game developer – graphics, 3D, mobile, desktop, Web
 DevOps engineer – Linux, Docker, Kubernetes, networking, …
 Java, C#, JavaScript, Python, C++, Swift, Kotlin, Go, Web dev,
Какъв програмист искам да стана?
Уменията на програмиста
 4 основни групи умения:
 Писане на код (coding skills) – 20%
 Алгоритмично мислене – 30%
 Фундаментални знания за професията – 25%
 Езици за програмиране и софтуерни
технологии – 25%
Уменията на програмиста
5
 Умението да пишеш код
 Работа с променливи, проверки, цикли
 Ползване на функции / методи / обекти
 Работа с данни: масиви, списъци,
речници и други структури
 Курсове в СофтУни:
 Programming Basics, Technology Fundamentals
 Езикът за програмиране няма значение!
Умение #1 – да кодиш (20%)
6
 Алгоритмичното (инженерно, математическо) мислене
 Способност да анализираш задачи и да измисляш решения
 Разбиване на проблема на стъпки (алгоритъм)
 Как да изградим алгоритмично мислене?
 Решаваме 1000+ задачи по програмиране
 Отнема половин-една година
 Курсове в СофтУни: Programming Basics,
Technology Fundamentals, Data Structures, Algorithms
 Езикът за програмиране няма значение!
Умение #2 – алгоритмично мислене (30%)
7
 Фундаментални концепции за софтуерния инженер
 Обектно-ориентирано програмиране (ООП)
 Функционално програмиране (ФП)
 Асинхронно програмиране и паралелност
 Бази данни, SQL, документни бази (напр. MySQL, MongoDB)
 Интернет технологии (HTTP, JS front-end, DOM, AJAX, REST, …)
 Софтуерно инженерство (сорс контрол, процеси, архитектури)
 Курсове в СофтУни: професионалните модули
 Езикът за програмиране няма значение!
Умение #3 – Фундаментални знания
и умения за професията (25%)
8
 Езикът за програмиране и технологиите
 Формират само 25% от уменията на програмиста!
 Езиците за програмиране и технологиите винаги са в
комбинация (technology stack)!
 Примерен минимум за Junior .NET Developer:
 C# + .NET Core + Visual Studio + бази данни + SQL Server + SQL +
Entity Framework + ASP.NET MVC + HTML + CSS + JavaScript + AJAX +
REST + XML + ООП + ФП + алгоритмично мислене + Git + софтуерно
инженерство + английски език + личностни качества
 Курсове в СофтУни: професионалните модули
Умение #4 – Езици за програмиране и
софтуерни технологии (25%)
9
Езици за програмиране и
софтуерни технологии
 C# / .NET
 C#, .NET Core, ASP.NET MVC, Entity Framework, SQL Server
 HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство
 Java
 Java EE, Spring Framework, Spring MVC, Hibernate, MySQL
 HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство
 JavaScript
 JavaScript, JS back-end, Node.js, Express, MongoDb; ФП, ООП
 HTML, CSS, front-end, React, Angular, Vue; софт. инженерство
Езици и платформи за програмиране
11
 Python
 Python, Django, MySQL, Flask, HTML, CSS, JS front-end
 HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство
 PHP
 PHP, MySQL, PHP frameworks, Laravel, Symfony
 HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство
 Други
 C++, Go, Swift, Ruby, Rust, …
Езици и платформи за програмиране
Вж. https://nakov.com/blog/2017/04/03/choosing-a-programming-language-for-start 12
13
Какво търсят фирмите?
Пътят към програмирането
през системата на СофтУни
Учебната методика на СофтУни
https://softuni.bg/curriculum
15
Как да стана програмист?
Вж. https://softuni.bg/university/developersguide
 Опитай дали програмирането е за теб!
 Запиши се за безплатния курс за начинаещи в СофтУни:
https://softuni.bg/apply
 Или си намери някой tutorial в Интернет
 Запалваш ли се?
 Харесва ли ти?
 Отдава ли ти се?
 Искаш ли да програмираш по цял ден години наред?
Как да стана програмист?
17
 Програмист се става с много здраво учене!
 2 години, по 4 часа на ден (средно)
 Или 1 година (по 8-10 часа на ден)
 https://softuni.bg/devtimetable
 Писане на много проекти, много практика
 Колкото повече, толкова по-добре
Учи здраво, много здраво!
18
 Писане на код (coding skills) – 20%
 Алгоритмично мислене – 30%
 Фундаментални знания за професията – 25%
 Езици за програмиране и софтуерни
технологии – 25%
Натрупай 4-те вида основни умения
19
 Натрупай портфолио от проекти в GitHub!
 Примери: https://github.com/YanaSlavcheva/SoftUni-Work,
github.com/hammer4/SoftUni, github.com/VasAtanasov
 Покажи на работодателите своите умения
 Как доказваш умения? С GitHub профил!
 Използвай кариерния център на СофтУни!
Започване на работа
20
 Лекторите:
 Залагаме на ключови имена в сферата
 Моделът „учене чрез правене“
 Практически умения за започване на работа
 Вече 100 000 души придобиха базови програмни умения
с курса “Programming Basics”
 Няма риск:
 Пробваш безплатно и разбираш дали е за теб
Още за СофтУни програмата
21
100 000+ кандидата до момента
22
23
Рейтинг
4.8 / 5.0
във FB от
800+ души
Хиляди взеха професия и работят!
24
Запиши се в СофтУни!
https://softuni.bg/apply
25
SoftUni – https://softuni.bg

More Related Content

More from Svetlin Nakov

Дипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин НаковДипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин Наков
Svetlin Nakov
 
Дипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООПДипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООП
Svetlin Nakov
 
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТСвободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
Svetlin Nakov
 
AI and the Professions of the Future
AI and the Professions of the FutureAI and the Professions of the Future
AI and the Professions of the Future
Svetlin Nakov
 
Programming Languages Trends for 2023
Programming Languages Trends for 2023Programming Languages Trends for 2023
Programming Languages Trends for 2023
Svetlin Nakov
 
IT Professions and How to Become a Developer
IT Professions and How to Become a DeveloperIT Professions and How to Become a Developer
IT Professions and How to Become a Developer
Svetlin Nakov
 
GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)
Svetlin Nakov
 
IT Professions and Their Future
IT Professions and Their FutureIT Professions and Their Future
IT Professions and Their Future
Svetlin Nakov
 
How to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a JobHow to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a Job
Svetlin Nakov
 
Призвание и цели: моята рецепта
Призвание и цели: моята рецептаПризвание и цели: моята рецепта
Призвание и цели: моята рецепта
Svetlin Nakov
 
What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?
Svetlin Nakov
 
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
Svetlin Nakov
 
Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)
Svetlin Nakov
 
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
Svetlin Nakov
 
Starting Your First IT Job: Tips by Nakov (Sept 2021)
Starting Your First IT Job: Tips by Nakov (Sept 2021)Starting Your First IT Job: Tips by Nakov (Sept 2021)
Starting Your First IT Job: Tips by Nakov (Sept 2021)
Svetlin Nakov
 
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
Svetlin Nakov
 
Building Your Talent: Nakov at Webit Unconference - June 2022
Building Your Talent: Nakov at Webit Unconference - June 2022Building Your Talent: Nakov at Webit Unconference - June 2022
Building Your Talent: Nakov at Webit Unconference - June 2022
Svetlin Nakov
 
Starting Your First Job in the Software Industry: Tips and Tricks from Nakov
Starting Your First Job in the Software Industry: Tips and Tricks from NakovStarting Your First Job in the Software Industry: Tips and Tricks from Nakov
Starting Your First Job in the Software Industry: Tips and Tricks from Nakov
Svetlin Nakov
 
Crypto vs Traditional Money (Feb 2022)
Crypto vs Traditional Money (Feb 2022)Crypto vs Traditional Money (Feb 2022)
Crypto vs Traditional Money (Feb 2022)
Svetlin Nakov
 
SoftUni Company Presentation (Pitch Deck) - Oct 2021
SoftUni Company Presentation (Pitch Deck) - Oct 2021SoftUni Company Presentation (Pitch Deck) - Oct 2021
SoftUni Company Presentation (Pitch Deck) - Oct 2021
Svetlin Nakov
 

More from Svetlin Nakov (20)

Дипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин НаковДипломна работа: учебно съдържание по ООП - Светлин Наков
Дипломна работа: учебно съдържание по ООП - Светлин Наков
 
Дипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООПДипломна работа: учебно съдържание по ООП
Дипломна работа: учебно съдържание по ООП
 
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТСвободно ИТ учебно съдържание за учители по програмиране и ИТ
Свободно ИТ учебно съдържание за учители по програмиране и ИТ
 
AI and the Professions of the Future
AI and the Professions of the FutureAI and the Professions of the Future
AI and the Professions of the Future
 
Programming Languages Trends for 2023
Programming Languages Trends for 2023Programming Languages Trends for 2023
Programming Languages Trends for 2023
 
IT Professions and How to Become a Developer
IT Professions and How to Become a DeveloperIT Professions and How to Become a Developer
IT Professions and How to Become a Developer
 
GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)GitHub Actions (Nakov at RuseConf, Sept 2022)
GitHub Actions (Nakov at RuseConf, Sept 2022)
 
IT Professions and Their Future
IT Professions and Their FutureIT Professions and Their Future
IT Professions and Their Future
 
How to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a JobHow to Become a QA Engineer and Start a Job
How to Become a QA Engineer and Start a Job
 
Призвание и цели: моята рецепта
Призвание и цели: моята рецептаПризвание и цели: моята рецепта
Призвание и цели: моята рецепта
 
What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?What Mongolian IT Industry Can Learn from Bulgaria?
What Mongolian IT Industry Can Learn from Bulgaria?
 
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
How to Become a Software Developer - Nakov in Mongolia (Oct 2022)
 
Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)Blockchain and DeFi Overview (Nakov, Sept 2021)
Blockchain and DeFi Overview (Nakov, Sept 2021)
 
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
Дигитални професии на бъдещето: не бъдете роботи! (юни 2021)
 
Starting Your First IT Job: Tips by Nakov (Sept 2021)
Starting Your First IT Job: Tips by Nakov (Sept 2021)Starting Your First IT Job: Tips by Nakov (Sept 2021)
Starting Your First IT Job: Tips by Nakov (Sept 2021)
 
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
10 Minutes Coding Lesson by Svetlin Nakov (April 2021)
 
Building Your Talent: Nakov at Webit Unconference - June 2022
Building Your Talent: Nakov at Webit Unconference - June 2022Building Your Talent: Nakov at Webit Unconference - June 2022
Building Your Talent: Nakov at Webit Unconference - June 2022
 
Starting Your First Job in the Software Industry: Tips and Tricks from Nakov
Starting Your First Job in the Software Industry: Tips and Tricks from NakovStarting Your First Job in the Software Industry: Tips and Tricks from Nakov
Starting Your First Job in the Software Industry: Tips and Tricks from Nakov
 
Crypto vs Traditional Money (Feb 2022)
Crypto vs Traditional Money (Feb 2022)Crypto vs Traditional Money (Feb 2022)
Crypto vs Traditional Money (Feb 2022)
 
SoftUni Company Presentation (Pitch Deck) - Oct 2021
SoftUni Company Presentation (Pitch Deck) - Oct 2021SoftUni Company Presentation (Pitch Deck) - Oct 2021
SoftUni Company Presentation (Pitch Deck) - Oct 2021
 

Become a Developer (Tips by Nakov) - 12 March 2021

  • 1. Как се става програмист от нулата? Всичко, което трябва да знаеш на старта Влез в света на програмирането 1 Софтуерен университет https://softuni.bg Д-р Светлин Наков Съосновател, ръководител иновации Софтуерен университет & СофтУни https://nakov.com
  • 2. Front-end, Back-end, Testing, Game Dev, AI, … Видове програмисти
  • 3. 3  Front-end developer – UI / UX  Back-end developer / database / cloud developer  Full stack developer – back-end + front-end  QA automation developer – software developer in test  Machine learning / AI developer  Game developer – graphics, 3D, mobile, desktop, Web  DevOps engineer – Linux, Docker, Kubernetes, networking, …  Java, C#, JavaScript, Python, C++, Swift, Kotlin, Go, Web dev, Какъв програмист искам да стана?
  • 5.  4 основни групи умения:  Писане на код (coding skills) – 20%  Алгоритмично мислене – 30%  Фундаментални знания за професията – 25%  Езици за програмиране и софтуерни технологии – 25% Уменията на програмиста 5
  • 6.  Умението да пишеш код  Работа с променливи, проверки, цикли  Ползване на функции / методи / обекти  Работа с данни: масиви, списъци, речници и други структури  Курсове в СофтУни:  Programming Basics, Technology Fundamentals  Езикът за програмиране няма значение! Умение #1 – да кодиш (20%) 6
  • 7.  Алгоритмичното (инженерно, математическо) мислене  Способност да анализираш задачи и да измисляш решения  Разбиване на проблема на стъпки (алгоритъм)  Как да изградим алгоритмично мислене?  Решаваме 1000+ задачи по програмиране  Отнема половин-една година  Курсове в СофтУни: Programming Basics, Technology Fundamentals, Data Structures, Algorithms  Езикът за програмиране няма значение! Умение #2 – алгоритмично мислене (30%) 7
  • 8.  Фундаментални концепции за софтуерния инженер  Обектно-ориентирано програмиране (ООП)  Функционално програмиране (ФП)  Асинхронно програмиране и паралелност  Бази данни, SQL, документни бази (напр. MySQL, MongoDB)  Интернет технологии (HTTP, JS front-end, DOM, AJAX, REST, …)  Софтуерно инженерство (сорс контрол, процеси, архитектури)  Курсове в СофтУни: професионалните модули  Езикът за програмиране няма значение! Умение #3 – Фундаментални знания и умения за професията (25%) 8
  • 9.  Езикът за програмиране и технологиите  Формират само 25% от уменията на програмиста!  Езиците за програмиране и технологиите винаги са в комбинация (technology stack)!  Примерен минимум за Junior .NET Developer:  C# + .NET Core + Visual Studio + бази данни + SQL Server + SQL + Entity Framework + ASP.NET MVC + HTML + CSS + JavaScript + AJAX + REST + XML + ООП + ФП + алгоритмично мислене + Git + софтуерно инженерство + английски език + личностни качества  Курсове в СофтУни: професионалните модули Умение #4 – Езици за програмиране и софтуерни технологии (25%) 9
  • 10. Езици за програмиране и софтуерни технологии
  • 11.  C# / .NET  C#, .NET Core, ASP.NET MVC, Entity Framework, SQL Server  HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство  Java  Java EE, Spring Framework, Spring MVC, Hibernate, MySQL  HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство  JavaScript  JavaScript, JS back-end, Node.js, Express, MongoDb; ФП, ООП  HTML, CSS, front-end, React, Angular, Vue; софт. инженерство Езици и платформи за програмиране 11
  • 12.  Python  Python, Django, MySQL, Flask, HTML, CSS, JS front-end  HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство  PHP  PHP, MySQL, PHP frameworks, Laravel, Symfony  HTML, CSS, JS front-end; ООП, ФП, софтуерно инженерство  Други  C++, Go, Swift, Ruby, Rust, … Езици и платформи за програмиране Вж. https://nakov.com/blog/2017/04/03/choosing-a-programming-language-for-start 12
  • 14. Пътят към програмирането през системата на СофтУни
  • 15. Учебната методика на СофтУни https://softuni.bg/curriculum 15
  • 16. Как да стана програмист? Вж. https://softuni.bg/university/developersguide
  • 17.  Опитай дали програмирането е за теб!  Запиши се за безплатния курс за начинаещи в СофтУни: https://softuni.bg/apply  Или си намери някой tutorial в Интернет  Запалваш ли се?  Харесва ли ти?  Отдава ли ти се?  Искаш ли да програмираш по цял ден години наред? Как да стана програмист? 17
  • 18.  Програмист се става с много здраво учене!  2 години, по 4 часа на ден (средно)  Или 1 година (по 8-10 часа на ден)  https://softuni.bg/devtimetable  Писане на много проекти, много практика  Колкото повече, толкова по-добре Учи здраво, много здраво! 18
  • 19.  Писане на код (coding skills) – 20%  Алгоритмично мислене – 30%  Фундаментални знания за професията – 25%  Езици за програмиране и софтуерни технологии – 25% Натрупай 4-те вида основни умения 19
  • 20.  Натрупай портфолио от проекти в GitHub!  Примери: https://github.com/YanaSlavcheva/SoftUni-Work, github.com/hammer4/SoftUni, github.com/VasAtanasov  Покажи на работодателите своите умения  Как доказваш умения? С GitHub профил!  Използвай кариерния център на СофтУни! Започване на работа 20
  • 21.  Лекторите:  Залагаме на ключови имена в сферата  Моделът „учене чрез правене“  Практически умения за започване на работа  Вече 100 000 души придобиха базови програмни умения с курса “Programming Basics”  Няма риск:  Пробваш безплатно и разбираш дали е за теб Още за СофтУни програмата 21
  • 22. 100 000+ кандидата до момента 22
  • 23. 23 Рейтинг 4.8 / 5.0 във FB от 800+ души
  • 25. Запиши се в СофтУни! https://softuni.bg/apply 25