Logo
IBM

Entry Level Firmware Developer

IBM, Lowell, Massachusetts, United States, 01856

Save Job

Join to apply for the

Entry Level Firmware Developer

role at

IBM

At IBM, work is more than a job - it's a calling: to build, to design, to code, to consult, to think along with clients and sell, to make markets, to invent, to collaborate - not just to do something better, but to attempt things you've never thought possible. Are you ready to lead in this new era of technology and solve some of the world's most challenging problems? If so, let’s talk.

Your Role And Responsibilities Firmware may exist anywhere in a computing system from the central computing complex to management consoles, power supplies, and I/O adapters within IBM mainframes.

Firmware Teams Include

Development of the hardware management console web interface and mobile app (Java)

Development for the world’s highest security cryptographic processors (C, C++, Java)

Development and support of I/O adapters (networking and storage) and Secure Service Containers used to support applications using blockchain technology. (C)

Server virtualization and a Parallel Sysplex environment so that mainframes can communicate as a single entity. (Assembler)

Implementation of complex z/Architecture instructions, concurrent and recovery functions (Assembler)

Development of control systems for IBM Quantum room temperature electronics

Our engineers apply agile methodologies throughout the entire development cycle, from design, code implementation/review, unit testing, functional testing, simulation, and real hardware integration testing. Some areas use a Unix/Linux based Operating System focusing on embedded programming, communication protocols, host application software support, and user-interfaces. Interface and code designs are done primarily to communicate with different hardware components via various hardware protocols such as PCIe. Ideal candidates will possess demonstrated software design skills, understanding of front-end, back-end technologies or embedded systems. Team-based experience in software development, agile methodologies, and the ability to perform software performance analysis, debugging and test.

Preferred Education Bachelor's Degree

Required Technical And Professional Expertise

Bachelors in Computer Science or Computer Engineering

Passion to pursue career path in Computer Engineering or Computer Science

Fundamental education in software design and/or test

Computer Architecture

Knowledge of one or more of the following programming languages: C, C++, Java, Assembly, PL/X

Scripting knowledge: Python, JavaScript, Perl, Bash, etc.

Strong Communication Skills

Preferred Technical And Professional Experience

Development knowledge of Unix/Linux kernel functionality

Knowledge of LAN drivers

FPGA experience

Experience in embedded systems development

Knowledge of web and mobile application development

Tools (Git/GitHub, IntelliJ, etc.)

#J-18808-Ljbffr