Для того, щоб стати хорошим програмістом необхідно розбиратися в математиці, фізиці. Оскільки математика, мабуть, єдина наука, яка вимагає істинно логічного мислення, а програмування це тим більш необхідно. Написати програму не замислюючись, без розробки алгоритмів, просто неможливо.
З іншого боку, ці навички постійно вдосконалюються, і тому, розібравшись з основними моментами в математиці ви будете здатні вирішувати більш складні завдання. Потрібно тільки працювати більше. Одне можна сказати напевно - ніхто не народжується зі знанням мов програмування і математики.
Другий аспект полягає в тому, що, щоб стати розробником потрібно володіти певним характером. Навчання програмуванню вимагає дуже багато терпіння, тому що коли ви допустили помилку в невеликих ділянках, вам доведеться переробляти всю програму з нуля. А потім раптом виявиться, що помилка була в іншому місці. Або її взагалі не було. Терпіння необхідно і в пошуку інформації, вивченні нових програм і в роботі з клієнтами, які не завжди (або майже завжди) не задоволені вашими працями з першого або навіть з четвертого разу.
Цікавість, бажання вчитися також є важливими елементами, але вони легко можуть бути згенеровані, якщо ви при цьому реалізуєте свої мрії.
Потрібно бути обережним при виборі мов програмування, вибрати самі приємні серцю і розуму мови програмування і почати з ними працювати. Слід пам'ятати, що мова програмування є лише засобом, щоб поліпшити щось в програмах. Всі навички, набуті в будь-якій мові програмування, стануть в нагоді вам і в роботі з іншою мовою. Так, наприклад, Паскаль буде розвивати відмінні навички в побудові алгоритмів. Всі речі починаються з малого і як в дитинстві людина навчилася робити перші кроки, поки не навчився ходити плавно, так і всі студенти спочатку роблять багато помилок.
Особливе становище на ринку праці займають програмісти 1С, зокрема, настроювачі програми 1С Торгівля, 1С склад і т.д. Такі фахівці високо оплачуються.
2) Розуміння всіх трьох середовищ Web Development
NET, PHP і Java. Сучасний веб-розробник повинен бути експертом по крайней мере в одній з них, і поверхово знайомий з двома іншими. Ви повинні також знати і фреймворки.
3) Знати Rich Internet додатки (RIA). Flash, AIR і Flex. Microsoft Silverlight і JavaFX, що забезпечують функціональність Інтернет. AJAX.
4) Знання, як оздать веб-служби або інтегрувати сторонні реалізації в вашому проекті. XML, SOAP, JSON, REST.
5) Динамічні мови програмування. Нові мови програмування з'являлися протягом останніх тридцяти років. Деякі до сих пір виділяються, особливо ті, які орієнтовані на динамічні функції, такі як Python, F #, Groovy, Ruby, Ruby On Rails.
6) Мати свої Soft Skills.
7) Розуміння проблем DNS і доменів
8) використання гнучких методологій
Більшість компаній-розробників сьогодні купують в Agile концепції розвитку. Будь-який веб-розробник, який розуміє Agile концепції буде затребуваний роботодавцями.
9) знання мобільних технологій
Мобільні веб-розробки як ніколи актуальні. Будь-який веб-розробник, який знає, як перевести веб-дизайн для мобільних додатків, а також розробляє додатки безпосередньо для мобільних пристроїв, отримають перевагу на ринку праці.
10) Уміння створювати чистий код