Одне з речей, про яке ніхто не згадував, - це те, що проблеми, які вам дають вирішувати в школі, свідомо скидаються вниз, щоб легко зрозуміти, як використовувати як конкретну техніку, яку ви навчаєте. Зазвичай ви знаєте, яку техніку ви повинні використовувати для вирішення конкретної проблеми, тому що це саме те, що ви накрили в класі. Цілі семестрові проекти є трохи вигідними, але все ще обмеженими за обсягом і складністю порівняно з реальним світом.
Проекти з реального життя безладні і розвиваються протягом багатьох років (нашому програмному забезпеченню більше десяти років і постійно змінюється протягом цього часу), і їх торкаються багато різних людей з багатьма різними рівнями кваліфікації. Ви все ще можете торкнутися 10-річної версії бази даних і взагалі не можете використовувати новіші методи SQL. Можливо, ви використовуєте інструмент, який був чудовим 8 років тому, але ви не навчалися в школі, оскільки його витіснило щось інше. Але компанія не хоче платити місяцями зусилля на розробку, щоб повністю її замінити.
Ви застрягли в світі, де час на розвиток розвивається сильно обмеженим тим, що клієнт заплатить і які, часом (добре, звичайно) штучні, терміни.
Можливо, ви будете обмежені у використанні інструментів, які спеціально запитував клієнт. У вас можуть бути розпливчасті вимоги або вимоги, які мало сенсу. Ви можете мати справу з дуже складною діловою сферою, про яку ви нічого не знаєте, і, таким чином, навіть не можете судити, чи мають вимоги сенс.
Проблеми реального світу ні в якому разі не порівнянні з приємними чистими проблемами, які вони дають вам у школі. Якщо ви не плутаєтесь і відчуваєте себе поза місцем більшу частину першого року, я б хвилювався за вас.