Fórum Root.cz

Práce => Studium a uplatnění => Téma založeno: Honza 02. 11. 2013, 16:24:20

Název: Práce programátora v assembleru
Přispěvatel: Honza 02. 11. 2013, 16:24:20
Nazdar

jak je to v dnešní době s assemblerem? Umím základy x86 (32-64) architektury (x87 FPU [vím, nepoužívá se], SIMD, SSEx) a zajímalo by mne jestli se dá sehnat práce kde by bylo možné vyžít těchto znalostí. Koukal jsem se různě na pracovní servery, a abych řek pravdu, nenašel jsem žádnou nabídku (no, jednu jo). Abych upřesnil na co se ptám když sem si v druhé větě odpověděl ... zhruba 60% pracovních nabídek není na netu (někde sem to čet ...) a proto je toto pokus prozkoumat těch 60% pracovního trhu jež sem ještě neprozkoumal (obrazně řečeno xD).
Název: Re:Práce programátora v assembleru
Přispěvatel: PANKapitanRUM 02. 11. 2013, 17:28:56
Paradox: Programátoři pracující v ASM bývají dramaticky méně placení než Java/.NET/C++.
Důvod: Pokud se nepovede sehnat pozici reverzního engineera nebo vývojáře ovladačů, kde v obou profesích to stejně chce kromě ASM i C, pak zůstávají pozice programátorů mikročipů, které bývají "neoprávněně" dost mizerně placené.
Mnoho přátel, kteří s ASM pracovali, přesedlalo buď na Cčko nebo třeba začali programovat CNC, protože CNC programátor s ~35 měsíčně si vydělá tak 2x tolik, co programátor v ASM.

Neříkám, že nebudou existovat výjimky.

Přirovnání: Programátorský tým je jako kapela, pokud se hraje dechovka, tak hráč na kokosové ořechy naplněné suchým hrachem se buď naučí hrát na housle/buben/trubku nebo vezme práci podržtažky.

Kam zkusit poslat CV a doufat v dobrý plat:
Antivirové společnosti
Vývojáři real-timových aplikací

V obou případech to bude chtít i znalost C.

Název: Re:Práce programátora v assembleru
Přispěvatel: mares.vit 02. 11. 2013, 18:17:05
Jestli chcete programovat takhle blízko železa, investujte do znalosti jazyka C, procesorů ARM (Cortex-M, ARM9, Cortex-A), do znalosti programování driverů v Linuxu a hledejte zaměstnání ve vývoji embedded systémů. Takových programátorů, kteří si chcou zašpinit ruce od železa, není nikdy dost. Základních informací o embedded Linuxu (http://www.ucsimply.cz/elnx/) najdete na internetu habaděj.
Název: Re:Práce programátora v assembleru
Přispěvatel: Honza 02. 11. 2013, 19:00:02
Jazyk C ovládám (C++ taky xD). BTW sem jedinej komu se zdá oficiální ARM dokumentace oproti Intelácký x86 hrozná?
Název: Re:Práce programátora v assembleru
Přispěvatel: kvas11 02. 11. 2013, 19:26:43
skus AZD (http://www.azd.cz/), ja som tam bol uz davnejsie na pohovor, kde hladali vyslovenie niekoho na ASM - koli programovaniu zabezpecovacich zariadeni na zeleznici. praca to mohla byt zaujimava, ale nakoniec som dal prednost J2EE (okrem ineho aj koli prachom, presne ako sa pise hore)
Název: Re:Práce programátora v assembleru
Přispěvatel: Michal Kovacic 03. 11. 2013, 16:26:15
Kam zkusit poslat CV a doufat v dobrý plat:
Antivirové společnosti
Vývojáři real-timových aplikací

V obou případech to bude chtít i znalost C.

Zkusil bych vývoj her - tam se ASM optimalizace algoritmů hodí velice, C (a jiné) budou chtít také a možná něco navíc...
Název: Re:Práce programátora v assembleru
Přispěvatel: PANKapitanRUM 03. 11. 2013, 19:48:36
To mi přijde jako dost velká blbost, sorry, spíš to vypadá, že jsi chtěl jen něco říct.
Opravdu dost pochybuji, že v ČR existuje takové studio, které by to využilo ::)

Aby se zaplatil samostatný člověk na tuhle úroveň optimalizací, muselo by se jednat o vývojáře AAA titulů a vývoj by museli dělat v Cčku, protože .NETtí verze bytecode není ASM, Flash je na tom podobně a Java je joke.

ASM je "skutečně" "potřeba" při tvorbě ovladačů zařízení, jenže společnost, která by vyvíjela takové zařízení, aby se jim vyplatilo si držet člověka na ASM. Skutečně i potřeba jsou v uvozovkách, protože ovladače se píšou v Cčku a těch věcí, kde je ASM opravdu, opravdu potřeba  až tolik není. Zase to může být tak jedna firma v ČR. Tj. taky jsem o tom nemluvil.

Ale výrobců antivirového software tu máme několik, Avas, AVG, Eset má v Praze tuším centrum a ještě jedna společnost.
Před reverzním Engineering-u je ASM k nezaplacení a těch lidí se tam uživí spousta.

No a nebo dělat cracky do her a brát za to bitcoiny  ;D
Název: Re:Práce programátora v assembleru
Přispěvatel: whata 04. 11. 2013, 09:21:39
Na ovladače stačí znát protokoly a mapování, a mít zhruba hardware přehled, assembler je potřeba minimálně, pokud vůbec. Ten je nutný na úrovni OS, aby byla pro drivery přístupná platform-independent vrstva.

Kde je skutečně assembler zajímavý, jsou následující místa:
- vývoj OS (ale taky poměrně malá část)
- zmíněné antiviry, analýza kódu apod.
- kompilátory
- různé matematicky orientované knihovny (video, šifrování, big number, obecně něco, co využívá typicky složitější operace na SIMD)
- grafické knihovny/ovladače, speciální případ předchozího, ale opět to jsou spíš menší kousky třeba pro operace s maticemi než obrovské bloky kódu
- počítačové hry ze stejného důvodu, pokud nepouživají už nějakou existující 3rd-party knihovnu
- embedded software, ale taky bych v dnešní době už víc čekal posun k C

Zajímavé firmy tedy jsou:
- RedHat, Intel, Oracle (Sun), Microsoft - pokud se dostaneš ke kompilátorům, pořád je to ale věda primárně o něčem jiném
- herní vývojáři - částečně, není toho tak moc
- nVidia, AMD - viz výše
- zmíněné antivirové společnosti
Název: Re:Práce programátora v assembleru
Přispěvatel: j 04. 11. 2013, 14:13:14
Zkusil bych vývoj her - tam se ASM optimalizace algoritmů hodí velice, C (a jiné) budou chtít také a možná něco navíc...

Kdepak, to by musel delat na vyvoji enginu (a kdovi jestli), hry se dneska stavej jako lego - vemes engine, ten ma vetsinou i nejakej ten editor, a zacnes mastit hru.
Název: Re:Práce programátora v assembleru
Přispěvatel: gamer 04. 11. 2013, 14:30:32
Ani v enginu by si s assemblerem moc neužil, v assembleru bývají jen low-level funkce pro oprerace s vektory/maticemi a toho zase tak moc není.
Název: Re:Práce programátora v assembleru
Přispěvatel: Vitek 04. 11. 2013, 22:12:15
Ahoj,

pokud by te zajimala prace v assembleru, ale na jine platforme nez PC je to IBM os380, tak muzes zkusit CA v Praze.
Zdar
V
Název: Re:Práce programátora v assembleru
Přispěvatel: randolf 05. 11. 2013, 19:01:52
Doporucuji zkusit SysGo, nyni uz vlastnene firmou Thales Aerospace
http://www.sysgo.com/company/jobs/job-offers-czech-republic/ (http://www.sysgo.com/company/jobs/job-offers-czech-republic/)

Je to super firma, s dobrou firemni kulturou a super odborniky (alespon ty v nemecke pobocce, ktere znam).

Pokud budes spokojeny, zves na pivo :)
Název: Re:Práce programátora v assembleru
Přispěvatel: mhi_ 05. 11. 2013, 22:10:23
Nabidnu moznost prace: ne ciste assembler (ale low-level znalosti se uplatni) pripadne reverse engineering (+spojene prace s programovanim pro dane platformy) ovsem uz ne na x86 (PowerPC, TriCore, HC(S)12, atd). Praha. Pokud mate zajem si popovidat, nechte mi tu nejaky kontakt.
Název: Re:Práce programátora v assembleru
Přispěvatel: ksfj 06. 11. 2013, 09:37:55
jeste na to muzes jit obracene. Reverzni inzenyrstvi. Analyzovani crash dumpu a tak.

Bud win platforma - pak si zacit hrat s WinDBG nebo jinde ...
Název: Re:Práce programátora v assembleru
Přispěvatel: xavyer 27. 11. 2013, 21:41:57
Někdo tu zmínil ten reverse engeneering, to možná. U nás připadá v úvahu AVG. Assembler jako optimalizace už je dnes asi na nic, protože každý procesor se optimalizuje jinak, což zvládne dobrý překladač C a grafiku dělá GPU. Dneska už si i C bere jako hardcore.
Název: Re:Práce programátora v assembleru
Přispěvatel: mr.rubik 03. 12. 2013, 10:25:57
Reverzním inženýrstvím se zabývá v Praze Avast, AVG nevím, ale to je, tuším v Brně. Eset je a) spíše na Slovensku a b) jsem slyšel, že ve Střední Evropě se snad ani tvorba jádra antivirů pro Eset nevyvíjí. Pokud bys ale chtěl jít do antivirové společnosti, troufal bych si tvrdit, že základy (jak to Ty popisuješ) nestačí. Nejsem odborník, ale myslím, že pro reverzování škodlivého kódu je potřeba znát spíš WinAPI, MS DDK, pravidla, jak se C/C++ překládá do ASM, než "holá" znalost Assembleru. V neposlední řadě je fajn být seznámen s reverzovacími nástroji (OllyDbg, WinDbg, IDA Pro atd...). Pokud Tě tahle problematika zajímá, doporučuju IDA Pro Book, případně vygooglit Demo scénu anebo vyzkoušet něco z CrackMes.

Jinak pokud znáš jen Assembler (a C++ např.) a nic moc víc okolo, tak s tím - podle mě - díru do světa neuděláš... Chce to mít alespoň základní přehled o nějakých konkrétních aplikacích/využití (příklady výše) apod. Tím neříkám, že nic jiného neumíš, ale tak Tvůj příspěvek vyzněl. Základy x86 asm zná spousta lidí, ale už málokdo je umí správně aplikovat...

Připojil bych se k tomu názoru, že herní studia v dnešní době se k Assembleru nedostanou. Možná, že nějaká část kritických výpočtů v enginu pro Battlefield 4 obsahuje pár řádek asm, ale k tomuhle se běžný smrtelník nedostane. V Čr bych očekával spíš tvorbu her za pomoci frameworku XNA od MS (např. Miner Wars), ale možná je to dáno spíš jen mým omezeným přehledem v tomhle odvětví. Ale to už zde bylo vesměs řečeno.

Možná by se daly Tvoje znalosti aplikovat v RedHatu v Brně. Řekl bych, že vývojářů driverů pro Linux není mnoho. Pak můžeš přispívat i do Fedory zadarmo a případně mi naprogramovat driver do Debianu pro moji externí zvukovku :)
Název: Re:Práce programátora v assembleru
Přispěvatel: Unifone 19. 08. 2014, 23:29:29
Hledame programatora v Assembleru, C nebo onePK pro NX-OS Cisco, v pripade zajmu piste prosim na info@unifone.cz ,dekuji
Název: Re:Práce programátora v assembleru
Přispěvatel: ass 19. 08. 2014, 23:41:21
Za kolik?
Název: Re:Práce programátora v assembleru
Přispěvatel: Bla 20. 08. 2014, 00:40:22
Jednak pracovní inzeráty jsou myslím placené a jednak otázka "za kolik" je vážně dobrá.
Já bych třeba pod 100 měsíčně čistá ruka nešel :) ostatně je to pro Cisco.
Obecně, společnost Cisco chce už za pozdrav na vrátnici tuším padesát litrů.
Dokonce i PR od Cisco "Cisco umí obojí" stálo peníze.
Název: Re:Práce programátora v assembleru
Přispěvatel: TomasVoracek 20. 08. 2014, 08:30:47
V Čr bych očekával spíš tvorbu her za pomoci frameworku XNA od MS (např. Miner Wars), ale možná je to dáno spíš jen mým omezeným přehledem v tomhle odvětví. Ale to už zde bylo vesměs řečeno.

Prehled mate vskutku omezeny, KSH nepouziva XNA (proc taky kdyz to MS zariz), ale SharpDX  ;)