MagTek's vision is to bank, shop, work, play, communicate and exchange services in a safe and worry-free environment.
As the most experienced and innovative provider of secure payment technology, MagTek is dedicated to protecting the identity and assets of our customers, and theirs, by eliminating fraud from every transaction. Facilitating over a trillion dollars of world-wide commerce each year. If you think you have what it takes to be a part of fast-paced and cutting-edge high technology manufacturing firm, then MagTek is the place for you!
Under minimal supervision, the Sr. Firmware Engineer is responsible for creating and debugging embedded controllers. Designs embedded code for microcontroller and microprocessor controlled systems to control hardware and electronic mechanisms such as motors and sensors. Other responsibilities involve conducting research and evaluation of new technologies in the area of embedded firmware development. Develop/Maintain documentation on the build status of the code. Full Time Remote Option available.
Responsibilities and Duties
- Responsible for the development, test, and support of embedded firmware.
- Responsible for hands on code development, testing, debug, and release.
- As required, must be able to write development plans and to define theory of operations.
- Must be accustomed to creating sufficient documentation.
- Responsible for training and coaching less experienced engineers.
- BS degree in any of the following: Computer Engineering, Computer Science, Electronics & Communications Engineering, or Electrical Engineering Required.
- At least 15 years of experience working with embedded systems.
- Must have knowledge and hands-on experience in bringing up networking interfaces (Ethernet/Wifi) for embedded systems. Experience in secure Ethernet/Wifi deployment is a strong plus.
- Must be proficient in C. Must have knowledge (work experience is preferred) of Object-oriented programming such as C++.
- Strong knowledge of Android/Linux, development experience in both kernel space (device drivers) and user space (applications) is a strong plus. Prefer to have experience in customizing Android/Linux kernel for security enhancements.
- Knowledge and hands-on experience of Real Time Operating Systems is a must. Must have experience on multi-threading system.
- Experience with system level and architecture design of embedded systems.
- Experience in structured design, OOD (e.g., code reusability), and best practices for embedded systems.
- Must be proficient with source control systems (e.g. Git) and defect tracking systems (e.g. JIRA).
- Ability to scope and estimate development effort.
- Ability to architect embedded firmware, from high level task scheduling to low level HALs.
- Must be proficient in the use of various compilers, debuggers, and IDEs (e.g. GCC, JTAG/GDB, eclipse).
- Must be experienced with some or all following typical interfaces/protocols - UART, USB, and Bluetooth/BLE.
- A strong plus to be experienced with various scripting languages. E.g. Python, Bash scripting, etc.
- Must have strong verbal, writing, interpersonal, and presentation skills.
- Must have the ability to work within a team environment. Must have worked in a team with size of 10 engineers or larger.
- Be able to read and understand schematics and capable of debugging new designs.
- Experience with unit testing and test-driven development.
- Experience with financial transaction handling, including EMV contact and contactless.
- Experience with cryptography: symmetric and asymmetric, encryption/decryption, hashing, signatures, certificates, etc.
- Firmware and product security, and PCI-PTS.
If you share our passion for technology and innovation, want a dynamic career and meet the profile described above, contact us today for immediate consideration. Please e-mail firstname.lastname@example.org.
MagTek is an Equal Opportunity Employer.