Principal Software Engineer Resume
4.00/5 (Submit Your Rating)
TECHNICAL SKILLS:
- Assembly x86, x 86 64 ,AMCC network processors, TM, AVR, ARM7
- 8bit and 16 bit processors and controllers Z80, 6502, 8051,68xxx, 68xx, AVR, ARM7
- Assembly and C (8 /16 /32 / 64 bits), Verilog
- Device Buses & Subsystem Flash devices PCI, PCIE, NVMe, USB2/3, I2C, PIO, SPI, SDIO
- Fedora, Ubuntu, embedded Linux for ARM, LinuxBIOS
- Windows 10,8,7, Windows XP, uC-OS2, vxWorks,DOS
- TCP/IP, UDP, LWAPP, IPsec, L2TP and all the protocols needed by VPN
- Capable of doing Analog or Digital designs with discrete components or PLD / FPGA. I am also capable of using Orcard for analog simulation / PCB layout and Modlesim for digital simulation.
- HP Logic Analyzer, Oscilloscope, JTAG ICE., Smartbits, IXIA Traffic Generator, Xgig, Bus Doctor, EtherReal
- ORCAD, MS Project, PowerPoint, MS Word, Visio, CVS, FrameMaker
PROFESSIONAL EXPERIENCE:
Confidential
Principal Software Engineer
Responsibilities:
- Taking care of issues & develop new features for SEE product line. Both Confidential & GuardianEdge’s product supports ALL possible brands of computers (laptop, desktop).
- From which I need to deal with BIOS, UEFI, NVMe, smartcards & readers, eTokens. For buses like PCI / PCIe, SATA, USB2, USB3, I2C; plus all of the related protocols & debugging facilities.
Confidential
Principal Software Engineer
Responsibilities:
- Assembly and C languages
- Knowledge in BIOS
- Knowledge in Linux boot
- Foreign keyboard handling
- Chipset PCI devices
- Linux Kernel
- i386 architecture
- SATA host / drive (device driver & protocol)
- PCI for AHCI devices
- Returning from Protected mode to Real mode for rebooting process
- Capable of using SATA Analyzer and DOS debugging tools to BIOS reverse engineering.
Confidential
Sr. Software
Responsibilities:
- System speed performance
- Power management / Device Hibernation
- USB device side MSC driver
- SATA certification / compatibility issues
- SATA power management (IPM and FIS)
- Device virtualization (RAID 0, 1 BIG, JBOD and some proprietary configurations)
- Raven STB contents storage (with DRM and device security) design / review.
- I am applying a few patents on port multiplier for laptop docking station (remote) configurations and application.
Confidential
Consultant
Responsibilities:
- I worked in Confidential ’s Wireless Business Unit (802.11 related products).
- My business unit is producing wireless Lan controller(4400 series) and APs.
- My responsibility was writing ucode(AMCC 3454) and improving fast path performance for the controller, which including network processor / FPGA / Security processors (Hifn chips).
- Some of the protocols needed were Lwapp (layer 2 & 3), Vlan, Ipsec, IP and etc…
Confidential
Chief Architect
Responsibilities:
- Provided the base technology and the companies patents are built on top of that thereafter. Also preparing and making presentations to VCs, locally or overseas.
- Provided the system data flow design (partitions according to each protocols needs between hardware, software & glueware) with modules definitions and implementation details to meet the product requirements.
- I have designed APIs for application programs to utilize the PreludeTek's hardware accelerator chip.
- Coordinate and Work with overseas network device manufacturers to port their existing software onto PreludeTek's platform.
- Supervise, coordinate and Work with software / hardware engineers to define, refine the entire system flow and eventually implementing the entire product.
Confidential
Sr. Embedded SW Engineer
Responsibilities:
- I have participated in architecting the fast path data / control flows for Maranti's iSCSI / FC SAN device. This includes both hardware & software.
- Provide nP microcode to assist iSCSI / FC fast path operations.
- Design / implement NPUM NPUM is a bridge between the SAN applications & fast path devices. Through NPUM, SAN applications can pass management messages to nP and expect replies from nP.
- Design / implement TM driver this is an TM API suite, which provides entries points to various TM requirements needed by the provisioning manager. To name a few functions, bandwidth allocation (TDM and flow based), flow setup (unicast, multicast, static & dynamic flows), scheduler setup, flow control (Xon/Xoff, credit based) setup, monitoring & credit synchronization. So, TM can provide the correct QoS to different customers.
- Design / implement switch fabric driver Worked with FPGA group to map the AMCC data / control format to CSIX format. So, data & flow control can function correctly with IBM switches fabric.
- Design / implement TM task this is a system task, which is on top of the TM drivers. TM Task provides API entry points to the provisioning manager.
- Participated in HA design & implementation, so TM driver / TM task/ NPUM will support the HA requirements.
- Help hardware group (PCB & ASIC group) to debug / bring up the system. The fast path consists of parts from various venders. Glue logics are needed to make them work together through different interfaces. My task was to provide the needed APIs, ensure all parts are correctly programmed and can operate smoothly at the rated speed.
Confidential
Sr. Staff Software Engineer
Responsibilities:
- I have provided device driver, firmware / test spec / test utilities for OC48 ATM (Framer, nP micro-code + driver, fabric driver).
- Define & implementation of "Soft" traffic generator for nP / fabric simulator.
- Designed fabric + nP driver interface for Real-Time Linux.
- I have participated in architectural design for TM & OC192 network processor, and worked on benchmarks for nP & fabric.
Confidential
Sr. Staff Software Engineer & Technical Lead
Responsibilities:
- Defined / implemented the entire software architecture for VoIP IAD over Fr & ATM, connects to different DSLAMs and Voice gateways.
- Device is capable of configure itself when connect to Copper Mountain DSLAM. Capable of adjusting the bandwidth utilization for voice traffic based on the linked speed.
- Depending on the DSLAM setup, the IAD can tx/rx voice & data over one or multiple DLCI for frame relay, different VCs and AALs for ATM.
- This was an ARM7 based product
Confidential
Staff Software Engineer
Responsibilities:
- I have defined the transport demultiplexor (demux) device driver architecture for a digital set-top box in satellite and cable networks. Designed & implemented a device driver for Windows 98 / Linux.
- Design / implement Linux USB drivers for printer, scanner, and camera.
- I have provided architectural design for home gateway / VoIP based on Linux.
