Hlavní menu
Nástroje |
BakalarskeStudium.ZnalostiDovednostiVyvojar HistoryShow minor edits - Show changes to output 05 September 2006, 13:50
by
- Added line 34:
* *programování ve vláknech* (stává se čím dál častěji běžnou potřebou) [Kerio] Changed lines 40-41 from:
to:
* znalost více platforem -- buď je Windowsák nebo Linuxář ale chybí mix [Kerio] Added line 49:
* .NET 05 September 2006, 13:48
by
- Added lines 23-24:
* *komunikační dovednosti* - umí položit smysluplnou otázku, nekývá, že rozumí, když nerozumí ** důvod: komunikace se zákazníkem, s kolegy, se šéfem 05 September 2006, 13:46
by
- Added lines 3-4:
* musí umět programovací jazyk, stačí jeden, ale skutečně pořádně ** důvody: další jazyk se v případě potřeby naučí poměrně snadno 22 August 2006, 15:32
by
- Added lines 45-61:
!! Non-requirements, tj. co _není_ třeba aby věděli * fyzika, elektronika * analýza požadavků, tvorba doménového modelu nebo entit * EJB * prezentace vně firmy !! Postřehy a poznámky * "síťař z oboru DS je použitelný jako dobrý síťař, softvérář z SWI není použitelný jako dobrý databázista" * inženýři moc neumí dekompozici na moduly/komponenty a "programování do rozhraní" * jako team leadeři se víc osvědčují absolventi MFF UK než FAV. * chtělo by to v nějakém předmětu probrat přehled "sw eng landscape" - např. dle ISO 15504 / SPICE * absolventi, kteří prošli "all Java" studiem, se "nechtějí snížit na úroveň C" což je problém * absolventi přichází s tím že "testování je otrava" 22 August 2006, 15:31
by
- Added lines 1-46:
Obecně se vyskytující požadavky, sestupně dle četnosti v průzkumu (viz ProfilBakalare a PotrebyZamestnavatelu): * zkušenost s *prací v týmu* a na reálných projektech ** důvody: ve firmě pracují z 95% v týmu * *UML - přečíst model*, případně umět vytvořit některé základní (tříd, aktivit, stavový, sekvencí) ** důvody: komunikační prostředek ve firmě * základy *konfiguračního managementu* - práce s CVS nebo Subversion, povědomí o bug-tracking systémech ** důvody: rutinní používání v denní práci programátora, řízení projektu (Kerio) * umět *psát anglicky* (a také česky) a rutinně číst anglické technické texty ** důvody: komunikační jazyk ve firmě (Kerio, GK), zahraniční zákazníci, outsourcing programátorů, školení * schopnost *dekompozice při designu*, programování do rozhraní, dobrá organizace *a čitelnost kódu* (srozumitelnost pro ostatní vývojáře) ** důvody: tvořit kvalitní kód který může někdo jiný oponovat a/nebo přebrat * používání hotových *knihoven a návrhových vzorů* vč. znalosti jejich výhod a nevýhod ** důvod: snazší komunikace, úspora nákladů na vývoj * znalost *SQL - aktivně* základní DDL i DML ("select + create"), povědomí o triggerech a uložených procedurách, vyzkoušeno na robustním DB serveru (Oracle, PostgreSQL) ** důvod: základní dovednost * znalost *fungování webu*, schopnost vytvořit jednoduchou webovou aplikaci ** důvod: většina aplikací má nějaké webové rozhraní * *prezentační dovednosti* - umět udělat prezentaci před publikem, umět napsat strukturovaný text srozumitelný pro odborníka i neodborníka ** důvod: obhajoba, školení; psaní podkladů pro vedoucí * znalost *testování* - k čemu slouží test a jak ho napsat ** důvod: denní chléb i programátora * znalost některého *skriptovacího jazyka* (Perl, bash) ** důvod: automatizace rutinních činností, jednorázové úlohy Některé zajímavé singularity: * principy *distribuovaných systémů* (transakce, protokoly) [GK] * *paralelní programování* (vč. synchronizovaný server-objekt, side-effecty monitoru) [GK] * praktický dopad *výpočetní složitosti* na velkých datech [Kerio] * vědět něco o normách, *standarech, zkratkách* z IT [Kerio, CCA] * umět se sám nabídnout, "prodat" [CCA] * schopnost pracovat v příkazové řádce na klasickém UNIXu (Solaris, AIX) [I-I] * umět programovat v C a nemít k tomu odpor [Kerio] Obvykle požadované technologické znalosti: * Ant, JUnit, případně Log4J * Subversion nebo CVS * Oracle nebo PostgreSQL + JDBC * HTML+CSS+HTTP (případně JavaScript) * XML, JAXP, základní DOM * JSP, ideálně základní Struts nebo JSF ---- Viz ZnalostiDovednosti |