*Role: BIOS Engineer Years of experience: 4-7 years Location: Chandler, AZ
Duration: 12 Months+ **Mandatory Technical Skills:*
*Embedded engineers w/ deep understanding of UEFI BIOS.*
*Knowledge of CherryTrail & Braswell a +*
* Experience Required:*
· The candidate should understand firmware in embedded environments.
· The candidate should have experience developing embedded and/or
real time firmware. This is considerably different from application and web
development in that the emphasis is on resilience, small footprint and
· The candidate should be able to broadly compare two
implementations regarding the number of potential failure paths.
· Given a description of two implementations, the candidate should
be able to explain which will consume less memory, both static and dynamic.
Ideally, the candidate should also be able to suggest improvements.
· The candidate should be able to handle both exception-based and
error code-based recovery mechanisms.
· The candidate should be comfortable writing code that does not
utilize standard libraries or OS calls (low-level code).
· The candidate should be extremely familiar with direct memory
access constructs and methods, particularly pointer manipulation and mixing
data access types and widths.
· The candidate should understand the repercussions of different
types of data and instruction caches (i.e. cache line cleans, flushes,
· The candidate should understand threading at a low level, both
cooperative and preemptive.
· The candidate should understand how synchronization objects are
implemented (e.g. critical sections, mutexes, semaphores).
· The candidate should understand priority inversion, I/O polling,
and interrupts, as well as the related ramifications.
· The candidate should have experience fitting code images into a
fixed RO part (e.g. 1Mbit EEPROM)
· The candidate should have a working understanding of how binary
images are generated (how compilers, linkers and make tools work in
· II. The candidate should be comfortable using and developing
for embedded Linux environments.
· III. The candidate should be comfortable with the C programming
language, and know how to use it in an object-oriented manner, whether or
not C++ is used.
· IV. The candidate should be familiar with the workings of both
x86 and ARM processors, including a minimal understanding of assembly
language and use of symbolic debuggers (e.g. gdb, lldb).
· V. The candidate should be familiar with the use of hardware
debug aids (e.g. JTAG, ITP).
· VI. The candidate should be comfortable using hardware probes
· VII. The candidate should be able to "root cause" an issue,
beyond debugging a problem, even when certain components are known to not
function correctly or to exhibit flaws.
· VIII. The candidate should be minimally familiar with the Linux
and Windows driver models.
· IX. The candidate should understand Ethernet at a low level.
Thanks & Regards
*Rathna KumarCharter Global | Technology ConsultingPh: 770-326-9933 x
<rg...@charterglobal.com> I www.charterglobal.com
You received this message because you are subscribed to the Google Groups
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to email@example.com.
Visit this group at http://groups.google.com/group/reqsresumes.
For more options, visit https://groups.google.com/d/optout.