Nástup do práce C#
Jsem cerstvy absolvent VS s titulem Ing. zamereni na elektrotechniku. Vzdy me to tahlo k programovani, na ktere vzhledem k narocnosti ostatnich predmetu nezbyvalo mnoho casu. Ve skole jsem se setkal 2 semestry s programovacim jazykem C# a semestr s jazykem C. Nemam zadne zkusenosti z komercni oblasti. Umim vpodstate zakladni syntaxy jazyka, zakladni postupu a uroven jednodussich skolnich projektu. Ma vubec smysl hlasit se na nejakou pozici Junior programatora C#? Nechtel bych byt pri pohovoru za blbce netusim jake pozadavky maji zamestnavatele na tyto pozice? Jestli byva popr. delsi zaskoleni apod. Nemate nekdo nejakou zkusenost s tim, kdyz jste treba zacinali vy? Dekuji.
K nám do firmy by si sa určite nedostal. Nechápem ako niekto môžeš chcieť ísť robiť programátora/kódera, ktorý vo voľnom čase nikdy nič nenaprogramoval/nenakódil, nemá o to záujem a myslí si, že by to mohol robiť?
Takých ľudí ako si ty, je na svete milióny. Pokiaľ sám nezačneš na sebe makať (to je jedno aká oblasť) tak z teba nikdy nič nebude. Môže ťa zobrať len stredná alebo veľká firma. Malé firmy produkujú najväčšie hlavy, pretože malá firma si nemôže dovoliť ľudí ako si ty. Takže ak by som bol na tvojom mieste, tak by som skúšal veľké firmy, kde sa stratíš a budeš dostávať nejaké peniaze a niečo sa aj hádam naučíš.
Malé firmy si často nemôžu dovoliť ani senior programátorov. Ak vie rozmýšľať a nebude za to pýtať vysoký plat, tak ho ako junior programátora kľudne niekam zobrať môžu. Píše, že má o to záujem, ale nemá komerčné skúsenosti. Počas skúšobnej doby naberie nejaké skúsenosti a ak ho nakoniec nezoberú, tak v ďalšej firme bude mať vyššiu šancu.
Blbca z neho na pohovore spraviť môžu, ak im napíše, že je expert na niečo, čo skoro ani nevidel.
však ten chlapec nič neurobil, ani nevie ktorým smerom chce ísť. Web? WinForms? WPF/Silverlight? WCF? Metro?
Absolventov je teraz strašne veľa a kvalita žiadna, málo ľudí to robí ako hobby. Malé firmy väčšinou majú (1-3) senior programátorov, ináč by neexistovali.
Mám pocit - že chlapec zaspal dobu, mrzí ma že som úprimný a drzí. Nikto sa s ním nebude hrať, však nemá 5 rokov.
Ja teda tie tvoje winforms a silverlight a ine MS dementnosti som vzivote nevidel a ani vidiet nechcem, a nemyslim si ze by som zaspal dobu :) MS stejne urcite do par rokov skrachuje (:P) a potom tebe budem hovorit ze si zaspal dobu :)
P.S. nech skusi ist na pohovor a uvidi. Ono dnes su aj podaktori senior programatori uplni dementi. Bohuzial. Mozno tam v tej firme dokonca bude vynikat ako najmudrejsi :)
MM (ako ti cukríky ) ty predpokladám robíš v cukrárni lebo očividne tomu nerozumieš.
Milan S. v každom prípade si vyber akou cestou chceš ísť, lebo zamestnávateľ sa ťa asi nespýta: máme voľné miesto vo WinForms teame a ASP.NET teame, do ktorého by si chcel ísť skúsiť?
Isteze, ja tomu nerozumiem To si teda trafil
P.S> Winforms a silverlight to je to co kazdy dnes chce, kolko mas zakaznikov ktori od teba chceli winforms a silverlight? Kolko mas s tym mesacny obrat? Lebo u nas vo firme mame 5milionv euro/mesiac obrat, tak neviem neviem ci tolko bude obrat vsetkych zakaznikov na svete pre silverlight za cele storocie :)
MM ja osobne s tým nerobím a ani naša firma. WinForms sme robili dávno, no dnes robíme len ASP.MVC. Poznám firmy ktoré s tým robia a by si sa extrémne divil kde to všade funguje )))
Viď:
- hokejový štadión v BA používa MS technológie (mám pocit že WPF a Silverlight) na kamery, zvuky, hudbu
- autobusové reklamy všade v BA (čo mi ide na nervy) sú na MS postavené
- T-Com / Mágio beží na Windowse (to si vedel?)
- nemusím ti písať, že stackoverflow.com beží na ASP.MVC, čiže na MS
- vedel si, že XBOX 360 je MS, upravený Windows? a že hry tam urobíš cez C# XNA?
- vieš, že Silverlight je základ Windows Phone?
- o armádnych projektoch ani písať nejdem
Za pár mesiacov uvidíš aký bude dopyt po Silverlight developerov. Nakoľko teraz (neviem kedy) MS bude spúšťať s Windows 8 aj tablety, všetko bude prepojené - čo je dôležité pre MS, nejde o bežných užívateľov ale o biznis riešenia. Vyčkaj času ako hus klasu a uvidíš.
PS: WinForms je už obsolete a obrat máte krásny. A neviem koľko zarobil Silverlight, ale WinForms sú všetky klasické aplikácie pod Windows od Firefoxu po Winamp až do Officu (ale ten je už asi WPF, neviem) - ja mám iMac (vyššiu formu PC)...
A nechce sa mi hádať, je mi to jedno. Chlapcovi sme problém nevyriešili a ja som ho chcel len varovať.
====
end;
====
keby si netrepal. vsetky normalne aplikacie su v klasickom C (C++) a pouzivaju WinAPI. Samorejme ze vyuzivaju aj grafikce prvky Windows (ktore poskytuje WinAPI), ale to sa tusim nevola WinForms, WinForms je snad nejaka haluz v C# ktorou to leze na WinAPI, t.j. zbytocnost na kvadrat. Klasicek aplikacie nie su v C# ani jedna.
P.S. podla mna tablety s Win8 si nikto nekupi a ms potom konecne skrachuje (snivat snad mozem, nie? :)
P.S.2. obrat je krasny, ale vyplata by mohla byt vyssia :/
V .NETe môžeš programovať aj cez C++. WinForms popisuje pekne Windows_Forms (WinForms aplikácií nebolo až tak veľa, ale Office ... neviem neviem ... a Visual Studio 2010 je napísané vo WPF a ktovie čo ešte), ale je možné že tu som sa pekne sekol
PS: tablety sa ani mne nepáčia s Win8, vôbec sa mi ten systém nepáči - ale má isté výhody o ktorých pochybujem, ale už mi to natlačili spriaznenci MS, tak uvidíme.
PS2: to by chcel asi každý
Neviem, či Windows 8 bude pre Silverlight práve nejaká výhra. Pokiaľ viem, tak má byť nahradený WinRT. Pre Silverlight/WPF programátorov by ale vývoj aplikácií mal byť podobný. Rovnaké WinRT API bude dostupné aj pre vývojárov v JavaScripte - uvidíme ako to dopadne.
Čo s tým má iMac (nižšia forma PC)?
Ja sa v tejto oblasti neorientujem ale z rozhovorov z ľuďmi čo s tým robia viem, že Windows 8 bude pre SL výhra, aplikácie do Windows Phone sa budujú cez primárne cez SL. Možno trepem, ale to som počul od vývojárov a čítal z rôznych webových zdrojov. Mňa osobne zaujíma/živý ASP.MVC a SQL SERVER, za to som MS veľmi vďačný, stabilnejšiu webovú technológiu (ja) som ešte nevidel.
Myslel si vyššia forma , iMac mám už 2 roky a nejdem ho vynachváliť, ten počítač má dušu takže ak budeš v mať možnosť kúpiť si ho tak kúp, používaj ho mesiac a potom pochopíš. To je ako mať motorku choppera japonca (ja ho mám, viem o čom píšem a nesedel som ešte na Harleyi, ale vravia že ak si na to sadnem a budem sa voziť týždeň pochopím ten veľký rozdiel (a verím v to).
PS: Windows je zle ukradnutý MacOS
A jaky nazor mas na dite, ktere se prave narodilo a jeste se neumi postavit a zkousi to? Taky to dela prvne a nikdy predtim se mu to neporadilo. /*+ Hint: muze se klidně jmenovat Bolt.. */
@AZOR nikde som nenapísal aby to neskúsil .. a nemiešaj hrušky s jablkami, to je trošku zlý príklad čo si uviedol. /* možno z neho bude Scott Guthrie */
ano byl zlý. Vtip je v tom, ze se typicky vetsina lidi na sve povolani nepripravuje - proc by meli programatori? Proc by mel delat nejake vlastni projekty misto toho aby behal venku a jeste patrne za mensi castku nez dostane i jako jinior ve stálé práci? Proc. Bude to senior za 5 let i kdyz bude do práce chodit a nebude cist manualy po vecerech? Bude. Tak o co go. Bud se muze tunit jako se tunim ja ctenim manualu nebo sve znalosti a schopnosti muze vklidu ziskat jako Rimmer - za 3 letou službu, za 6ti letou službu, 9ti letou službu..
A to je problém, že veľa ľudí sa na povolanie nepripravuje. A potom to tak napr. v politike vypadá, ako to vypadá
Azor, ono je to uhol pohľadu. Ja by som si osobne človeka do firmy nezamestnal, ktorý nemá k tomu vzťah (vravím, dnes je problém zohnať kvalitných ľudí). Hold sú firmy, ktoré mu tú šancu dajú a možno ho urobia ešte lepším kóderom ako si viem predstaviť. Len píšem, je to uhoľ pohľadu a ja nie som jednoznačne pre takýchto ľudí.
----
end;
----
Myslím, že by si si to rozmyslel, ak by si potreboval zabezpečiť práce, na ktoré stačí junior a senior by si pýtal vyše dvojnásobok toho, čo junior. A kontrolovať každého zamestnanca, či ti je sympatický a má k tomu to správne nadšenie alebo nie, môžeš naozaj iba v malej firmičke.
Závisí od situácie, ale hľadal by som ľudí po dev fórach a záujmoch. Ale súhlasím na jednoduché práce, prečo nie... (priznávam zlé vyjadrenie)
Ak ta bavi aj elektroechnika tak mozes sa pozerat aj po poziciach zameranych na robotiku, mikrokontrollery, apod. Ono to na rozidel od MS NET nezmyslov mozno bude mat lepsiu buducnost :) Samozrejme ze ma zmysel hlasit sa aj na junior programatora C#, ak si myslis ze to je to co by si chcel robit. Ked firme vyhovovat nebudes tak ta proste odmietne a hotovo, nic sa nedeje. Urob si trochu prehlad vo volnych poziciach (na nejakom jobs.cz alebo google: hledam praci) a vyber si olast ktora ta najviac zaujima (ci uz nejake bankove systemy a databazove, alebo skor hardwarove - robotika apod, alebo webove a ine srandy). BTW. najviac penazi maju banky, a tak pred 5-10 rokmi vsetky chceli javu a databazy :D Ale to uz asi neplati.
výnimočne súhlasím.
ja zas suhlasim ze mal by sa tomu trochu viac vennovat aj vo volnom case, urobit si nieco len tak pre radost apod aby mal s tym nejaku skusenost. Napr. s tym ASP.NET ci .MVC ci co to teraz je, ak chce robit taketo srandy (ak chce robit nieco ine tak nieco ine). Ale ja mam pocit ze firmy maju prehnane poziadavky, obcas pozeram ponuky jobov ptz chcem aj ja uz po 10rokov zmenit job, a co citam v inzeratoch poziadavky to su kvanta kdejakych skratiek o ktorych snad ani ten pracovnik co zadaval ten inzerat nevie co znamenaju A pochybujem ze by nasli jedneho co to vsetko ovlada. Treba skusat, poslat zivotopis apod, nepohryzu ho.
No ja som kedysi videl dopyt po WPF vývojárovi so 4-ročnou praxou v čase, keď bolo WPF na svete 3.5 roka. Niečo mi hovorí, že takého nenašli.
Clovek to musi brat s nadhledem, podle me to funguje tak ze HR chce neco do textu popisu pozice a zepta se IT jake maji technologie. A uz se neresi ze spoustu veci treba resi externi firmy, apod. Muzu rict ze popis pozice na ktere jsem ted taky hledal nekoho, kdo na teto planete neni Ve skutecnosti delam tak 30procent toho co tam bylo napsano.
K puvodnimu tazateli - proste posilej cv a chod na pohovory a uvidis. I kdyz te treba hned nekam neprijmou, tak pohovory jsou dobra priprava na pohovory dalsi, zjistis jake maji fmy pozadavky a na co se ptaji a pak uz budes lepe pripraven. A jeste poznamka: rifle a tricko se na pohovor neobleka
1. Ak neja firma hlada junior programatora, tak od neho nebude chciet detailnu znalost nejakej specifickej technologie, ako je napriklad WPF, alebo asp.net mvc a pod. Oni v prvom rade hladaju cloveka, ktory ma prehlad a je schopny sa ucit a samostatne hladat risenia. Znaost konkretnej technologie nieje urcujuca, lebo tych technologii je tak vela, ze to nema vyznam pozadovat. Oni si ta zaucia.
2. pokial chces robit C#, tak taka najbeznejsia poziadavka su databazy. databazam sa proste neda vyhnut, tie su vsade.
Cize mal by si si vediet vytvorit nejake tabulky, vztahy medzi nimi a nejake jednoduche selecty.
S databazami suvisi ORM. mal by si si nejake zbezne pozriet, napriklad EntityFramework, alebo LinqToSql. (odporucam drzat sa rieseni od microsoftu, nie tretostranove produkty, budu pre teba jednoduchsie a maju vela zdrojov)
3. Kazda aplikacia potrebuje nejake rozhranie, bud webove, alebo desktopove. Na webe si mozes vybrat asp.net webforms (starsie, ale pouzivanejsie a stale sa vyvyja, hodi sa viac na intranety), alebo asp.net mvc (novsie, viac sa hodi na webstranky). Na klientovy mas v podstate iba WPF (Winforms, je uz obsolete. ked sa naucit wpf, tak budes vediet aj silverlight a windows phone). Minimalne jedno z toho musis ako tak vediet, najlepsie jednu webovu a jednu desktopovu technologiu, zacni webovou. Tiez ti odporucam zistit si co je to VersionControl, zistit kvoli comu je treba a skusit nejaky pouzivat, napr TFS, SVN, Git atd..
4. Na pohovore budes dostavat zhruba taketo otazky: ake su tvoje skusenosti s
webovym vyvojom (asp.net, javascript, html, css, jquery)
databazami (sql server, pripadne ine sql, navrch databaz, pisanie selectov, ORM)
webservicy (vediet co je to SOAP, WSDL, pripadna skusenost s WCF)
uml nastroje (ktorymi sa daju modelovat schemy, napriklad databazy, alebo rozne business procesy. Napr MS Visio, Enterprise architect, Power designer)
ine vyvojarske schopnosti (skusenosti s desktopovym vyvojom, silverlight, winforms, c++, matlab atd)
ine IT schopnosti (napr autocad, photoshop, sharepoint)
keby si vedel vsetko, tak niesi junior developer, ale uz viac. Minimalne by si ale mal o vsetkom vediet povedat, na co to je, mal by si si vediet predstavit situaciu v praxi, kedy je to vyhodne pouzit atd.
[pokracovanie]
5. ja ti odporucam spravit si nejaky vlastny projekt, ktory si dopredu zadefinujes a potom ho podla specifikacie naprogramujes. Velmi vela sa pritom naucis. snaz sa vymysliet si take zadanie, aby si pouzil co najviac z tych technologii, ktore som napisal.
Skus si napriklad vyrobit webovu aplikaciu, kde sa budu dat pisat spravy. Budes mat databazu, kde si budes definovat uzivatelov. Kazdy uzivatel bude mat nejake spravy ktore odoslal a ktore prijal. Alebo inak, sprava bude mat odosielatena a prijimatela.
a) navrhni si databazu. Rucne (cez sql management studio) si tam pridaj vzorove data
b) vytvor administracne webove rozhranie - aplikaciu, kde si budes moct zobrazit zoznam userov, nejakych pridat, alebo zmazat a ked si kliknes na uzivatela, tak sa ti zobrazi jeho zoznam sprav.
c) sprav si WPF aplikaciu, ktora bude bude predstavovat klienta, cez ktoreho budes moct pisat spravy a ziskat zoznam sprav, ktore ti napisal niekto iny. Tato aplikacia nebude mat pristup priamo k databaze, takze budes musiet nejako komunikovat so serverom, napriklad pomocou webservicov (WCF), alebo budes robit requesty na tu tvoju webovu aplikaciu a ona ti bude vracat tie data, ktore si vyziadas.
Ked toto spravis, tak budes pripraveny na 100% na akykolvek pohovor. Budu sa o teba bit ;) Je toho vela, to nespravis za dva dni, ale ziskat pri tom velmi vela prave tych vedomosti, ktore potrebujes. postupuj po jednotlivych krokoch a) b) c), a vzdy ked niektory ukoncis, spytaj sa niekoho skusenejsieho, ci si to spravil dobre. Pripadne este predtym ako zacnes, tak sa ho spytaj, ze co si mas nastudovat. mozem ti odporucit portal vyvojari.sk, tam ti takzi borci odpovedia vacsinou do par minut. Predtym ako zacnes riesit nejaky bod, tak venuj par hodin precitaniu si nejakych tutorialov k danej teme vseobecne, az potom sa zacni venovat konkretne tvojmu problemu. snaz sa hladat tutorialy pre zaciatocnikov.