HOME  /  CAREERS

Careers

Software Engineer – Entry/Intermediate Level

Location:
Creox Computing Singapore
Department:
Design and Engineering
Job Summary: Design, code, and debug embedded software (BMC/BIOS) for server and network switch systems, working on low-level components that interface directly with hardware to deliver core platform functionality.

Key Responsibilities

Firmware Development:

  • Coding firmware for various network switch/server components, including BIOS/UEFI, OS/NOS, Service Manual, BMC and device-level firmware for PCIe devices (e.g., NICs, storage controllers).
  • Implement and optimize features related to network switch/server system boot, power management, thermal control, sensor monitoring, error handling, and security.

Hardware Interaction & Bring-up:

  • Participate actively in hardware bring-up activities for new switch/server platforms, diagnosing and resolving issues at the hardware-firmware interface.
  • Work closely with hardware/FPGA engineers to implement firmware requirements, analyze schematics, and verify optimal hardware-software interaction.
  • Utilize hardware debugging tools for root cause analysis.

System Integration & Validation:

  • Integrate firmware components with hardware, operating systems, and higher-level software.
  • Support system-level validation, including functional, performance, stress, and reliability testing.
  • Analyze test failures to identify firmware-related root causes and implement corrective actions.
  • Contribute to defining test plans and improving test coverage for firmware.

Standards & Best Practices:

  • Adhere to secure coding practices and contribute to robust, maintainable, and well-documented codebases.
  • Participate in code reviews to ensure quality and consistency.

Required Qualifications

  • Bachelor’s or Master’s degree in computer engineering, Electrical Engineering, Computer Science, or a related field.
  • Graduate to 3 years of experience in related embedded software or firmware development, preferably in Enterprise equipment, network/server product, computing or embedded systems.
  • Strong proficiency in C/C++/Linux programming languages.
  • Hands-on experience with embedded systems debugging using tools like JTAG, GDB, logic analyzers, and oscilloscopes.
  • Familiarity on computer architecture, microcontrollers, and common hardware interfaces (e.g., I2C, SPI, UART, PCIe, USB, GPIO).
  • Familiar with BIOS/UEFI or BMC firmware interface and usage.
  • Familiarity with network switch/server hardware components (CPUs, ASIC, chipsets, memory, storage, network interfaces).
  • Ability to read and understand hardware schematics and datasheets.
  • Strong problem-solving skills and attention to detail.
  • Experience with scripting languages (Python, Bash) for automation, testing, and build systems.
  • Knowledge of industry standards like IPMI, Redfish, ACPI.
  • Familiarity with various server management and monitoring tools.
  • Familiar with Linux system and command /SONIC.
  • Familiar with version control systems.

Requirements

  • Excellent problem-solving and analytical skills.
  • Have a can do attitude and drive to be a world class R&D member
  • Flexibility to work and explore different technology domains
  • Possess good interpersonal and communication skills.
  • Good verbal and written communication skills with the ability to interact and work well with internal and external customers.
  • Ability to travel if required.

Get In Touch

Please fill in the form below and we will get back in a flash.

Thanks for Stopping By

We’ re thrilled to have you at our booth today.
Explore what we have to offer – and let’s talk!

Email Me the Catalogue