Eisen functie "Ontwikkelaar Elektronica"

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat zijn de specifieke functie eisen van een elektronica ontwikkelaar?
Wat moet een elektronica ontwikkelaar kunnen en/of weten?

Zelf ben ik een WO Informatica student die graag ervaring wil opdoen bij een bedrijf die elektronica ontwikkelt. Op het moment werk ik part-time 2 dagen in de week als C# ontwikkelaar en wil eigenlijk graag meer de elektrotechnische kant op en het programmeren daarvan in C.

Het is me dan ook niet duidelijk wat een elektronica ontwikkelaar nu tot aan kennis moet bezitten. Wat moet hij weten. wat moet hij kunnen

Acties:
  • 0 Henk 'm!

  • Rmg
  • Registratie: November 2003
  • Laatst online: 05-08 21:51

Rmg

Embedded ontwikkelaar bedoel je denk ik?

Want "Ontwikkelaar Elektronica" klinkt mij in de oren als hardware design en dan doe je weinig tot niets met C.

Wat je moet weten en kunnen om embedded engineer te worden is niet makkelijk te beantwoorden want het is nogal een breed vak.

Ikzelf heb ruime kennis van C, ervaring met verschillende microcontrollers inclusief, kan een multimeter vasthouden, begrijp hoe een scoop werkt. Heb een basisje electrotechniek, kan een datasheet lezen en begrijp hoe digitale signalen werken.

Zelf ben ik nu bijna 3 jaar werkzaam als embedded engineer.

Maar ik heb ook collega's die meer van het FPGA werk zijn, embedded linux en PLC werk doen. Word allemaal gezien als Embedded engineer bij ons

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hardware design is inderdaad anders dan Embedded engineer.
Er zijn veel bedrijven die bij Embedded engineer vragen om het kunnen lezen/begrijpen van datasheets en hardware schema's. Soms ook mee kunnen helpen ontwikkelen op dat gebied.

Waar ik een lange tijd naar op zoek ben geweest is een Embedded Ontwikkel functie waar je C programmeert en bij de hardware ontwikkeling betrokken wordt. Het aanbod is alleen zeer mager, zijn weinig vacatures voor en wordt blijkbaar erg weinig gevraagd. Ook ben ik een aantal keer afgewezen en naar mijn idee was dat te wijten aan te weinig ervaring in de elektrotechniek.

mijn programmeer kennis: C, assembly en een basis van microcontrollers

Ik heb oprechte interesse in hardware ontwikkeling naast het programmeren. Maar het is me niet duidelijk wat je daarvoor moet kunnen

[ Voor 6% gewijzigd door Verwijderd op 08-08-2013 15:45 ]


Acties:
  • 0 Henk 'm!

  • Sine
  • Registratie: Juni 2001
  • Laatst online: 05-08 23:32
Als je geen vooropleiding hebt in de elektronica ( en absoluut minimaal elektrotechniek), dan kon dat nog wel eens tegenvallen.

Zeker als je analoog / power / high speed digitaal moet gaan doen zijn dat nou niet echt dingen waar je zomaar in springt.

Repareren doe je zo.


Acties:
  • 0 Henk 'm!

  • Rmg
  • Registratie: November 2003
  • Laatst online: 05-08 21:51

Rmg

Verwijderd schreef op donderdag 08 augustus 2013 @ 15:40:
Waar ik een lange tijd naar op zoek ben geweest is een Embedded Ontwikkel functie waar je C programmeert en bij de hardware ontwikkeling betrokken wordt. Het aanbod is alleen zeer mager, zijn weinig vacatures voor en wordt blijkbaar erg weinig gevraagd. Ook ben ik een aantal keer afgewezen en naar mijn idee was dat te wijten aan te weinig ervaring in de elektrotechniek.
Dat het aanbod mager is merk ik zelf niets van. Hier in de regio Eindhoven is er meer vraag dan aanbod naar embedded developers. Alleen je hebt ervaring met C en met Microcontrollers nodig.

Heb je daar ruim ervaring mee (microcontrollers) dan heb je ook al automatisch een beetje kaas gegeten van digitale elektronica.

Dus wat is je ervaringsniveau en wat voor opleiding(en) heb je ?

Zelf heb ik een opleiding Technische informatica (Embedded Systems engineer/Industrial Automation). Dat is toch wel een vereiste

[ Voor 6% gewijzigd door Rmg op 08-08-2013 15:47 ]


Acties:
  • 0 Henk 'm!

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Hmm als je kan stoeien met microcontrollers zou ik niet direct zeggen dat je kaas hebt gegeten van digitale elektronica. Dat is echt iets anders.
Verwijderd schreef op donderdag 08 augustus 2013 @ 14:55: Op het moment werk ik part-time 2 dagen in de week als C# ontwikkelaar en wil eigenlijk graag meer de elektrotechnische kant op en het programmeren daarvan in C.
Dan heb je het eigenlijk over Technische Informatica. Afhankelijk van hoe low-level het werk is ga je richting de Elektrotechniek. Technische Informatica houdt zich sneller bezig met hogere programmeertalen, waarbij je met Elektrotechniek wat sneller gaat bit-bangen in Assembly.
Het is me dan ook niet duidelijk wat een elektronica ontwikkelaar nu tot aan kennis moet bezitten. Wat moet hij weten. wat moet hij kunnen
Het lijkt me handig als een 'elektronica ontwikkelaar' een Elektrotechnische achtergrond heeft.

http://www.tudelft.nl/?id=5083

Ik ben zelf elektrotechnische ingenieur, maar ben min of meer verdwaald geraakt van de Elektrotechniek discipline. Ik moet maar heel snel gaan kijken naar een andere functie, want ik mis het als werk. Elektronica ontwikkeling doe ik enkel als hobby.

[ Voor 11% gewijzigd door Oyster op 08-08-2013 16:05 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Rmg schreef op donderdag 08 augustus 2013 @ 15:46:
[...]


Dat het aanbod mager is merk ik zelf niets van. Hier in de regio Eindhoven is er meer vraag dan aanbod naar embedded developers. Alleen je hebt ervaring met C en met Microcontrollers nodig.

Heb je daar ruim ervaring mee (microcontrollers) dan heb je ook al automatisch een beetje kaas gegeten van digitale elektronica.

Dus wat is je ervaringsniveau en wat voor opleiding(en) heb je ?

Zelf heb ik een opleiding Technische informatica (Embedded Systems engineer/Industrial Automation). Dat is toch wel een vereiste
Zelf heb ik een jaar Technische Informatica gedaan aan de Hogeschool van Amsterdam richting Embedded Systems/Industrial Automation en een jaar Technische Informatica aan de TU richting Software Engineer.
Opgedane kennis C, assembly en wat over fpga

Op het moment doe ik gewoon Informatica. Maar een technische informatica is niet heel veel anders dan gewoon Informatica behalve de opgenoemde programmeertalen en verder missen beide opleidingen enige elektrotechnische vakken.

Acties:
  • 0 Henk 'm!

  • Garyu
  • Registratie: Mei 2003
  • Laatst online: 05-08 21:34

Garyu

WW

Wat wil je doen? Wil je applicaties ontwikkelen die op een embedded device draaien (met of zonder OS), of wil je echt HAL, drivers, en dat soort dingen ontwikkelen?

Wij ontwikkelen embedded platformen (dus PCB, FPGA/ASIC en de onderliggende software) maar meestal houdt dat vóór het OS op, die komt meestal van een derde partij en wordt zo aan de klant geleverd. Onze software-mannen hebben zeker niet allemaal kaas gegeten van analoge schakelingen, maar schrijven best drivers schrijven voor bijvoorbeeld I/O (CAN, Ethernet, RS232, etc.). Een scope heb je bij dat werk nauwelijks nodig, die worden meer in de HW-electronica-ontwikkeling gebruikt. Verder werken er nogal wat mensen bij ons die zich bezig houden met het ontwikkelen van configuratie-tools voor de platformen die we aanbieden. Dit zijn vooral Eclipse/EMF en Python eigenlijk.

Wil je algemeen applicaties ontwikkelen dan zul je wel met C uit de voeten moeten kunnen, al kan je ook steeds meer op basis van bijvoorbeeld Eclipse ontwikkelen, aangezien meer en meer model-based is.

[ Voor 23% gewijzigd door Garyu op 08-08-2013 15:58 ]

It's Difficult to Make Predictions - Especially About the Future


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Garyu schreef op donderdag 08 augustus 2013 @ 15:55:
Wat wil je doen? Wil je applicaties ontwikkelen die op een embedded device draaien (met of zonder OS), of wil je echt HAL, drivers, en dat soort dingen ontwikkelen?

Wij ontwikkelen embedded platformen (dus PCB, FPGA/ASIC en de onderliggende software) maar meestal houdt dat vóór het OS op, die komt meestal van een derde partij en wordt zo aan de klant geleverd. Onze software-mannen hebben zeker niet allemaal kaas gegeten van analoge schakelingen, maar schrijven best drivers schrijven voor bijvoorbeeld I/O (CAN, Ethernet, RS232, etc.). Een scope heb je bij dat werk nauwelijks nodig, die worden meer in de HW-electronica-ontwikkeling gebruikt. Verder werken er nogal wat mensen bij ons die zich bezig houden met het ontwikkelen van configuratie-tools voor de platformen die we aanbieden. Dit zijn vooral Eclipse/EMF en Python eigenlijk.

Wil je algemeen applicaties ontwikkelen dan zul je wel met C uit de voeten moeten kunnen, al kan je ook steeds meer op basis van bijvoorbeeld Eclipse ontwikkelen, aangezien meer en meer model-based is.
Garyu, dat raakt het meest waar ik naartoe wil. Ik wil graag van 2 werelden snoepen zegmaar. Zowel de hardware kunnen ontwikkelen als de drivers daarvan maar niet perse in een OS. Die 2 werelden zijn best te combineren.

Mijn doel is geweest om via embedded engineer in C die kant op te groeien.

Hoe noem je de beschreven functies bij jullie? En wat zijn de vooropleidingseisen en/of ervaring?
Rmg schreef op donderdag 08 augustus 2013 @ 15:46:
[...]
Dat het aanbod mager is merk ik zelf niets van. Hier in de regio Eindhoven is er meer vraag dan aanbod naar embedded developers. Alleen je hebt ervaring met C en met Microcontrollers nodig.
Ik ben zelf wonend in omgeving Amsterdam, maar voor het werk sta ik open om ver te reizen. Misschien heb ik niet voldoende me best gedaan bij het aantal sollicitatie verzoeken die ik verstuurd heb of niet op de juiste websites gezocht.

[ Voor 13% gewijzigd door Verwijderd op 08-08-2013 16:11 ]


Acties:
  • 0 Henk 'm!

  • Rmg
  • Registratie: November 2003
  • Laatst online: 05-08 21:51

Rmg

Mja ik heb de mazzel gehad dat ik in Eindhoven terecht kwam. Heb ook in Amsterdam gewoon & gestudeerd (HvA ook toevallig) maar heb mijn Afstudeerstage in Eindhoven gedaan en ben daarna naar Brabant verhuist. In deze regio is gewoon meer van dat type werk dan in Amsterdam is mijn ervaring

Acties:
  • 0 Henk 'm!

  • Garyu
  • Registratie: Mei 2003
  • Laatst online: 05-08 21:34

Garyu

WW

Verwijderd schreef op donderdag 08 augustus 2013 @ 16:06:
[...]


Garyu, dat raakt het meest waar ik naartoe wil. Ik wil graag van 2 werelden snoepen zegmaar. Zowel de hardware kunnen ontwikkelen als de drivers daarvan maar niet perse in een OS. Die 2 werelden zijn best te combineren.

Mijn doel is geweest om via embedded engineer in C die kant op te groeien.

Hoe noem je de beschreven functies bij jullie? En wat zijn de vooropleidingseisen en/of ervaring?

[...]
Ik heb het hierboven alleen over de software-mensen gehad. Die mensen hebben indirect natuurlijk invloed op het design van de hardware (immers, zij stellen voor een deel eisen aan de HW), maar ontwerpen dit zeker niet zelf! Wij hebben hier drie "departments", eentje voor HW, eentje voor SW (embedded drivers, embedded applications, configuration and tooling) en eentje voor FPGA/ASIC.

Binnen de HW afdeling zitten vooral HBO en WO mensen met een elektrotechniek-achtergrond. Binnen de SW en Chip afdeling heeft vrijwel iedereen een informatie-opleiding.

Binnen de SW-ontwikkeling zijn dat dan de "normale" functies als Application Engineer, Embedded Linux Software developer, Project Engineer Aerospace, Software Tools Developer, etc. Als software-man ben je dus niet zo met het HW-ontwerp bezig, maar vooral met de implementatie van functionaliteit binnen de grenzen van de hardware, behalve dus bij het initiele design/requirements definition.

PS: als ik zoek bij Monsterboard.nl naar "Embedded" in de regio amsterdam krijg ik genoeg vacatures te zien hoor! Bijvoorbeeld zoiets (niet aan mijn werkgever gerelateerd overigens hoor, ik zit zelf een kleine 1500km verderop)

[ Voor 9% gewijzigd door Garyu op 08-08-2013 16:50 ]

It's Difficult to Make Predictions - Especially About the Future


Acties:
  • 0 Henk 'm!

  • sphere
  • Registratie: Juli 2003
  • Laatst online: 05-08 20:48

sphere

Debian abuser

Ik kan je in ieder geval vertellen dat wij ons hoofdkantoor in de regio Eindhoven hebben maar ze onze software poot in Den Haag niet gaan verplaatsen omdat ze bang zijn dat mensen worden weggekaapt. Zoveel werk is daar.

http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Garyu schreef op donderdag 08 augustus 2013 @ 16:45:
[...]
Binnen de HW afdeling zitten vooral HBO en WO mensen met een elektrotechniek-achtergrond. Binnen de SW en Chip afdeling heeft vrijwel iedereen een informatie-opleiding.

Binnen de SW-ontwikkeling zijn dat dan de "normale" functies als Application Engineer, Embedded Linux Software developer, Project Engineer Aerospace, Software Tools Developer, etc. Als software-man ben je dus niet zo met het HW-ontwerp bezig, maar vooral met de implementatie van functionaliteit binnen de grenzen van de hardware, behalve dus bij het initiele design/requirements definition.

PS: als ik zoek bij Monsterboard.nl naar "Embedded" in de regio amsterdam krijg ik genoeg vacatures te zien hoor! Bijvoorbeeld zoiets (niet aan mijn werkgever gerelateerd overigens hoor, ik zit zelf een kleine 1500km verderop)
Bedankt voor je informatie!! Ik neem aan dat de FPGA/ASIC ook door elektrotechnici gedaan wordt?

Ik had wel het idee gekregen dat embedded engineers wel kennis nodig hadden van de hardware om deze te programmeren. Dit stond ook bij sommige functie eisen.

Maar in hoeverre staan bedrijven open voor junior ontwikkelaars en part-timers op het gebied van embedded ontwikkeling? Op het moment is er veel vraag naar C# parttime ontwikkelaars. vandaar dat ik dit werk ook doe o.a.. Maar dit werkt ook mezelf tegen omdat ik hierdoor ervaring opbouw in C# maar niet in C en/of de low level programmeren waar ik naartoe wil werken

Hoe komt het dat Elektrotechnici wel in aanmerking komen voor programmeer functies maar andersom niet? Aangezien het blijkt dat vanuit de IT hardware ontwikkelen vrijwel onmogelijk is?

Acties:
  • 0 Henk 'm!

  • Garyu
  • Registratie: Mei 2003
  • Laatst online: 05-08 21:34

Garyu

WW

FPGA/ASIC ontwerp is bij ons puur informatica (VHDL).

Enig kennis van de hardware heb je natuurlijk nodig, maar op een bepaald abstractielevel. Je moet natuurlijk de ins-en-outs van een bepaald processor-type weten, en om drivers te kunnen schrijven moet je natuurlijk weten wat daar onder gebeurt, maar je hebt er maar beperkt invloed op.

Bedrijven schreeuwen naar nieuwe krachten, omdat er gewoon te weinig goede mensen te vinden zijn. Bij ons beginnen aardig wat mensen relatief jong en met relatief weinig ervaring, aangezien er hier niet zoveel markt is. Part-time kan best, maar dan duurt het ook langer voordat je erin zit.

Je kan natuurlijk ook een beetje kennis opdoen in je vrije tijd, er zijn genoeg projecten op het internet te vinden om eens het e.e.a. te programmeren voor een lowlevel device. Begin eens met een Arduino-type board en laat dan langzaam de Arduino libraries los bijvoorbeeld. Je zult zien dat je tegen van alles en nog wat aanloopt, maar vooral dingen als cache, register- en memorygroottes tegen gaat komen als de problemen waar je oplossingen voor gaat moeten vinden.

It's Difficult to Make Predictions - Especially About the Future


Acties:
  • 0 Henk 'm!

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 12:35

memphis

48k was toen meer dan genoeg.

Electronica is een heel breed begrip.

De basis is nog steeds standaard analoge en digitale techniek om op basis van componenten naar de juiste specs een schakeling te kunnen ontwikkelen. Steeds vaker worden schakelingen rondom een processor gebouwd zoals de bekende Atmel (Arduino) familie en PIC familie. Alleen die dingen kunnen programmeren is natuurlijk ook zeer beperkt om als een volwaardige ontwikkelaar/designer te functioneren.

Er zijn mensen die mij een GOD vinden


Acties:
  • 0 Henk 'm!

  • Garyu
  • Registratie: Mei 2003
  • Laatst online: 05-08 21:34

Garyu

WW

memphis schreef op vrijdag 09 augustus 2013 @ 10:30:
Electronica is een heel breed begrip.

De basis is nog steeds standaard analoge en digitale techniek om op basis van componenten naar de juiste specs een schakeling te kunnen ontwikkelen. Steeds vaker worden schakelingen rondom een processor gebouwd zoals de bekende Atmel (Arduino) familie en PIC familie. Alleen die dingen kunnen programmeren is natuurlijk ook zeer beperkt om als een volwaardige ontwikkelaar/designer te functioneren.
Als SW-ontwikkelaar zul toch beperkt blijven tot processor-gebaseerde ontwerpen. Waar wil je anders de software onderbrengen? ;)

It's Difficult to Make Predictions - Especially About the Future


Acties:
  • 0 Henk 'm!

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 12:35

memphis

48k was toen meer dan genoeg.

Alleen een chip programmeren brengt geen complete schakeling tot stand. Hier op dit forum lopen er ook genoeg rond die een Arduino willen programmeren maar niet eens weten hoe een LED of een schakelaar aan te sluiten.

Als je in een team zit en verantwoordelijk bent voor het software deel zal het wel goed gaan maar neemt niet weg dat enige (basis)kennis van analoge en digitale electronica wel zo prettig is want soms moet je programma samenwerken met een deel electronica er omheen. (in de zin meer dan alleen statisch signaaltjes inlezen en uitsturen)

Er zijn mensen die mij een GOD vinden


Acties:
  • 0 Henk 'm!

  • Carstijn
  • Registratie: Januari 2002
  • Laatst online: 29-07 21:10
Bij ons is de splitsing als volgd:

Hardware engineer ontwikkeld elektronica, met daar op een eerste laags software (drivers en low level interfaces). Daarnaast doen zij ook de VHDL, dit wordt als hardware gezien. Daarnaast wordt de meeste software voor testsystemen door hun geschreven (pc/embedded).

Software eningeer ontwikkeld applicatie software op een OS, dit kan op een PC zijn (C,C++) of embedded op een RTOS, meer gericht op de gebruiker dan op de hardware de onderlaag is al opgebouwd door de HW engineers.

bij intresse even DMen

Acties:
  • 0 Henk 'm!

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Verwijderd schreef op donderdag 08 augustus 2013 @ 18:46:
[...]


Bedankt voor je informatie!! Ik neem aan dat de FPGA/ASIC ook door elektrotechnici gedaan wordt?

Ik had wel het idee gekregen dat embedded engineers wel kennis nodig hadden van de hardware om deze te programmeren. Dit stond ook bij sommige functie eisen.
Ik denk dat het eerder in de trend komt te staan dat je je eigen code kan debuggen, ook op hardware. Dat wil nog niet zeggen dat je zelf je hardware moet ontwikkelen, maar wel dat je moet kunnen achterhalen dat als jouw code niet werkt of de fout in de soft- of hardware ligt. Lijkt me lastig om anders resultaat te boeken, beetje wat Rmg zegt. Dus je zult wel moeten weten wat het gemiddelde IC/passief deeltje doet. Wie de FPGA/ASIC doet verschilt sterk per bedrijf, denk dat de voorkeur van het personeel daar ook een rol in speelt. Bij ons hebben we een grens tussen hardware en programmeurs, regardless van de taal (ook VHDL wordt als taal gezien) dus bij ons zijn dat 2 verschillenden. De tijd die in software wordt gestoken is naar mijn idee ook een factor 2 tot 3 hoger, zeker als er een grafische GUI in zit.
Hoe komt het dat Elektrotechnici wel in aanmerking komen voor programmeer functies maar andersom niet? Aangezien het blijkt dat vanuit de IT hardware ontwikkelen vrijwel onmogelijk is?
Omdat programmeurs geen zak weten van elektronica ;). Maar ff serieus, dat is omdat je voor elektrotechniek een hoop natuurwetten dient te kennen en te kunnen toepassen (Ohm, Coulomb, Maxwell, Gauss, Ampère, Kirchoff. Faraday, Lenz) en IT'ers worden daar niet in opgeleid. Elektrotechnici moeten ook kúnnen programmeren: Zij kiezen de hardware en het zou ontzettend stom zijn als ze processors kiezen waar de programmeur niet mee uit de voeten kan. Wat verder belangrijk is in de elektrotechniek is met name elektromagnetische compatibiliteit (EMC) en, afhankelijk van je bedrijf, bijvoorbeeld meet- en regeltechniek in het Laplace-domein of telecommunicatie. Er zit in elektrotechniek ook wel een fors verschil tussen HBO en WO: WO'ers zijn veel aan het rekenen en de theoretische onderbouwing, HBO'ers maken het werkbaar ontwerp en de MBO'er zet het vervolgens in elkaar (extreem kort door de bocht). Sommige vakgebieden zijn in mijn optiek ook echt gereserveerd voor WO, zoals (draadloze) telecommunicatie en meetsystemen. Dat is pittige lectuur, waar ik ook geen interesse in heb. Geen spijt van mijn keus in HBO.

Wellicht dat je tijdens het werk een deeltijd opleiding elektrotechniek HBO of WO kunt volgen. Als je dan een master hebt in informatica, dan ben je behoorlijk breed inzetbaar en kun je solliciteren naar de functies die jou leuk lijken.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Verwijderd schreef op donderdag 08 augustus 2013 @ 18:46:
[...]
Hoe komt het dat Elektrotechnici wel in aanmerking komen voor programmeer functies maar andersom niet? Aangezien het blijkt dat vanuit de IT hardware ontwikkelen vrijwel onmogelijk is?
Redelijk ja, Elektrotechnici kunnen programmeren, IT'ers kunnen geen hardware ontwerpen.

Uiteraard als je in PHP iets wil programmeren moet je bij een IT'er zijn. Moet er een microcontroller geprogrammeerd worden dan denk ik toch dat de gemiddelde elektrotechnici meer ervaring heeft met het doorspitten van datasheets welke registers geset moeten worden. Ze weten wat bijvoorbeeld het SPI polariteit bit daadwerkelijk doet. Ze begrijpen de hardware die er verder aan hangt, en kunnen dus bedenken wat het handigste is om door de microcontroller te laten doen en wat je door iets anders laat doen.

En als je op een 8-bitter werkt kan je niet alles als float/int32 aanmerken ;).

Nu is het echt niet onmogelijk voor een IT'er om een microcontroller te programmeren, maar om daadwerkelijk hardware te ontwerpen is toch een stap verder.

[ Voor 7% gewijzigd door Sissors op 10-08-2013 11:17 ]


Acties:
  • 0 Henk 'm!

  • epic_gram
  • Registratie: April 2010
  • Laatst online: 03-08 22:20

epic_gram

undercover moderator

Programmeren is vooral een manier van denken die je jezelf moet aanleren, zodra je met taal A kunt programmeren hoef je alleen nog maar de syntax aan te passen om bij taal B uit te komen.

Afhankelijk van wat voor opleiding je precies volgt binnen het brede spectrum van de elektrotechniek kan je wel zeggen dat elektrontechnici prima in staat zijn om te programmeren ja. Je leert van alles, programmeren in C, VHDL en assembly. Combineer dit vervolgens met linux wat je in embedded systemen ziet en je programmeerd gelijk een stuk hoger in het systeem.

Bijkomend voordeel van een elektrotechnieker is dat hij een completer beeld heeft van een applicatie dan een ict-er. Een programmeur denkt meestal alleen in broncode, waar een elektrotechnieker ook snapt hoe het met registers en dergelijke werkt. Concreet voorbeeld hiervan is bijvoorbeeld de memory overflow. Elektrotechniekers snappen hoe je een stack kunt overschrijven bijvoorbeeld als je je applicatie niet goed dichtspijkert als programmeur en lossen dat op door variabelen bijvoorbeeld op een strategische plaats te declareren in de broncode.

Het Centrale Vodka Topic! win een iPad! Kras hier met een sleutel of ander scherp voorwerp: ███████████


Acties:
  • 0 Henk 'm!

  • Anteros
  • Registratie: Januari 2009
  • Laatst online: 08:00
Ik zit nu al ruim dertien jaar in het embedded vak en mijn functie is dan ook Sr. Embedded software engineer. Nu heb ik het geluk dat ik zowel veel interesse had in hardware als in software waardoor mijn werkzaamheden een stuk makkelijker af gaan. Ik heb overigens HBO TCK (Technische Computer Kunde) gestudeerd. Ik had geen zin om door te studeren en heb het er bij gelaten.

Je hebt twee soorten embedded programmeurs in mijn ogen. De 1e is de echte embedded engineer met gedegen hardware kennis. Hij kan goed hardwareschema's lezen en liefst maken, hij weet erg veel van de gebruikte microcontroller, de architectuur, de periferie, de limitaties van het interne en externe geheugen, de snelheid van de geheugenbus, eventuele caching, real-time gedrag, etc. Ook heeft hij ervaring en kan hij omgaan met de soldeerbout, oscilloscoop/Logic Analyser en hardware debuggers om de firmware te kunnen debuggen op een live running target (liefst non-intrusive). Omdat hij erg laag op de hardware programmeert, heeft hij vaak ook kennis van low-level communicatiesystemen en protocollen zoals SPI, RS232, I2C, CAN, etc. Het programmeren gebeurt vaak tegen de hardware aan en dit doet hij bare-metal, via een super-loop/round-robin scheduler of middels een (RT)OS.

De 2e soort is een embedded engineer die op een hoger niveau programmeert. Zo hoeft hij niet zo veel te weten van de microcontroller en de gebruikte periferie. Hij kan de hardware wat abstracter behandelen. De drivers voor de periferie worden aangeleverd of intern door andere mensen ontwikkeld. Vaak programmeren ze op Posix compliant operating systems zoals Linux, QNX, etc. Het debuggen gaat via software zoals GDB. Een IT-er zou zich hier redelijk in kunnen vinden. Het is bijna hetzelfde als programmeren voor een PC, maar uiteraard wel met beperkingen (zoals geheugen gebruik, beperkte processorsnelheid, beschikbaarheid van wel of geen floating-point unit, etc). Een hardwareschema lezen en een oscilloscoop bedienen is eigenlijk altijd wel een pre in de embedded wereld.

Ik werk bij een bedrijf dat hardware en Real-Time embedded software ontwikkelt. De dagelijkse bezigheden van mij zijn oa:
- Harwareschema's lezen, reviewen en soms uitbreiden/wijzigen
- Processoren selecteren in samenspraak met de hardware engineers
- Design/architectuur maken van de firmware
- Make systemen opzetten, verbeteren en toepassen op nieuwe projecten
- Modulair programmeren in C. Vaak object-oriented C (niet C++, maar OO design principes in C)
- Debuggen middels Lauterbach debuggers (JTAG) icm tracing, code coverage, breakpoints, etc
- Timing analysis middels oscilloscoop en/of tracing ivm Real-time gedrag van onze producten
- Overleggen met hardware engineers, system test engineers en QC
- Drivers schrijven voor Linux (LED, FPGA, etc)
- VHDL schrijven, simuleren, testen en debuggen (middels oscilloscoop en/of logic analyser). Dit is overigens kennis die lang niet alle embedded engineers bezitten. Vaak worden VHDL en FPGA's gezien als een hardware verantwoordelijkheid en derhalve ook ontwikkelt door een hardware engineer.

Dit zijn maar enkele bezigheden binnen mijn functie. Het wil ook nog wel eens verschillen tussen de verschillende werkgevers.

Als laatste. Ik heb tientallen sollicitatiegesprekken gevoerd met potentieel nieuwe collega's. Echter viel het me op dat de kwaliteit en aanbod van de mensen tegenviel. We zijn naar het buitenland uitgeweken om daar mensen proberen te vinden. Ook dat viel overigens tegen. Er is veel vraag naar goede embedded engineers maar helaas zijn die gewoon dun gezaaid. De embedded kant kiezen voor je studie is in mijn ogen dan ook een goede keuze. Werk zat!
Pagina: 1