We provide IT Staff Augmentation Services!

Software Engineer Resume

5.00/5 (Submit Your Rating)

San Diego, CA

SUMMARY:

  • Consulting Engineer specializing in embedded microprocessor interrupt - handling software and Confidential in C, C++, Python, JAVA and Assembly Language for multithreaded, realtime embedded systems, involving Communications Networking protocols such as TCP/IP, UDP, RTP/RTCP, SNMP, TL1, IPv6, Gigabit Ethernet. POE, POE++ . MIPI CSI-2, D-PHY, UNIPRO, DSI, DCS. Camera sensors. H.264, MPEG-2, Discrete Cosine Transform, DOCSIS, PACKETCABLE, MHP/OCAP, SS7, Q.931, 802.11 b/g/a/i, 802.11ac. 802.15.4 .
  • Embedded LINUX, SOCKETS, utilizing platforms VxWORKS 653, ThreadX, Embedded Linux, WIN32, BDA, SMX, PBDA, WDM, WDF, KMDF, UMDF. IPTV, ALSA, Android, Bluetooth 4.0 BLE Profiles/Attributes/Characteristics, Windows CE, NDIS. GUID GPT, ACPI, PXE, IPMI. AMI/Phoenix BIOS, Coreboot, CBFS, EFI, UEFI, PXE, I2C, PMBUS, LPC Interface, ACPI, IPMI. PCI, PCI-E, PC/104. Projects involving microprocessors ARM, PowerPC, MIPS, x86, x86 SMM, x86 SSE, DSP TMS320C6xxx, TMS320C55xx .
  • On Semi Ezairo 7100. i.MX31, ARM9, ARM Cortex M3/M4, Atmel AVR-32. nRF52832, STM32F439ZI, Arm Cortex M4. ARM TrustZone. Implemented MPEG, video, audio, signal processing, wireless, Ethernet communications systems, SANs implementing SCSI/iSCSI, SAS, Telephony and CableLabs, OpenCable cable CPE and Head-End interface systems, QAM. Software Defined Modem, QPSK, QAM, OFDM, LTE, OFDM, SC-FDMA. CAN, Canopen, Canalyzer, Vector CAN tools, J1939. DC Motor Pulse Width Modulation (PWM) Confidential . H-Bridge. Piezo, Wheatstone bridge circuits. Vocoder/CELP/G.729/RTP/RTCP.
  • Avionics development according to DO-178B, reading circuit schematics, setting oscilloscope triggers. VHDL, Verilog. NVMe, NVMHCI, SSD,. PIC32 MPLAB.X .
  • Code Composer Studio. Semiconductor Ion Implantation dose doping of. Boron, Argon. PIC16F1783 power supply/PWM/Buck/ADC/thermistor development.
  • Reverse engineering hex code read from ROM, Eprom etc into assembly language mnemonics (MIPS/x86/PowerPC) and into C language. IDA Pro.
  • Ladder Logic. LTE, 4G/IMT-Advanced. Git, SVN/Subversion.

PROFESSIONAL EXPERIENCE:

Confidential, San Diego, CA

Software Engineer

Responsibilities:

  • Designed and wrote Linux device driver and user space application code to enable TI serial communications McBSP and DMA to transport industrial control and SCADA information through MODBUS/MODBUS-TCP in TI AM3517 ARM Cortex-A8-based SOC, manipulating Linux kernel kfifo circular buffers and DMA callbacks, using Eclipse CDT timesys toolchain, with VMware Workstation Player Windows 10 host to Linux virtualization.
  • Implemented user space C++ STL Bind and Observer Design Pattern.

Software Engineer

Confidential, PA

Responsibilities:

  • Designed and wrote FreeRTOS C code for Cypress PSoC 5 CY8C54LP system to interface it to a KSZ8851SNL Single-Port Ethernet Controller with SPI interface and TCP/IP implementation, including DHCP/ARP/DNS/UDP, using TCP/IP sniffer.

Software Engineer

Confidential, San Jose, CA

Responsibilities:

  • Designed and wrote Linux code and for Kontron bbd6 x86 Xeon D-1539 system which implemented 16 Ethernet GBE POE++ interfaces utilizing multiple i350 Ethernet controllers and multiple LTC4266 poe controller devices, and transformers for isolation.
  • Performed Intel igb device driver configuration.
  • Designed BMC smbus nc-si implementation for management/monitoring.

Software Engineer

Confidential, San Jose, CA

Responsibilities:

  • Designed and wrote Linux/Python code for Raspberry Pi 3 to perform wifi ftp communications, implement pyinotify file presence detection, and modify wearable device based on C/GNU/Nordic nRF5 2 Arm Cortex M4 code which performed Bluetooth BLE communications with BLE Beacon devices and other wearable devices.

Software Engineer

Confidential, Vista, CA

Responsibilities:

  • Designed and wrote ST STM32 Cortex M4-based microcontroller C/C++ and assembler for CAN bus aeronautics communication system and x86 C and Assembly Language for Coreboot BIOS work with ThreadX BSP.

Software Engineer

Confidential, Vancouver, WA

Responsibilities:

  • Designed and wrote ATMEL AT91SAM3X8C ARM Cortex M3-based microcontroller C/C++ using ATMEL Studio 6.2 to implement pyro timing system for fireworks display apparatus.
  • Utilized SAM3X-EK Atmel evaluation board with SAM-ICE to test and debug FreeRTOS based USB Host Mass Storage system, a USB HID firing switch and EMAC Ethernet buffer descriptors.

Software Engineer

Confidential, Vancouver, WA

Responsibilities:

  • Designed and wrote Microchip PIC32MX795F512L PIC32 microcontroller C/C++ using MPLAB X IDE to implement printer based LED, photosensor based paper registration system, operating stepper motors to control angles of mirrors at specific points of paper travel.
  • Wrote code to generate font-based output on Truly WVGA (800x480) TFT LCD display and used PICKIT3 in-circuit debugger/programmer.

Software Engineer

Confidential, Mountain View, CA

Responsibilities:

  • Designed and wrote gnu C/ARM Cortex A-15 Krait-400/Snapdragon device drivers and Java test program with Eclipse on Linux/Android/Binder platform for the Qualcomm MSM8974 with Adreno 330 GPU video utilizing Video4Linux V4L2 to develop 3D Camera functionality, implementing MIPI CSI-2, D-PHY, M-PHY, DSI, CAMIF, VFE, across AXI bus. Worked on WCD9320 SLIMbus audio interface.
  • Wrote C code to interpret readings from Invensense MPU6050 MEMS device to enhance camera sensor readings.
  • Developed software according to LTE OFDMA, SC-FDMA, 4G/IMT-Advanced specifications. Used Git for source code control.
  • Worked on Bluetooth Low Energy 4.0 VDP/GAVDP profile stream of video to paired Bluetooth device. Interfaced withTrustZone through SysCall and modified TrustZone BSP code and FIQ interrupts to access VFE and Venus MultiMedia SubSystem through System MMU in TZ Secure World.

Software Engineer

Confidential, San Jose, CA

Responsibilities:

  • Designed and wrote GNU gcc C for Linux kernel mode code on ARM Cortex A9 Zynq processor to implement DVI/HDMI interface of graphical data to LCD monitor, involving reading schematics, video IP datasheets I2C switch configuration, for CEC/DDC control, CEA-861 Infoframes, VHDL debug/build of IP cores under Xilinx ISE, and installation of bitstreams into PCB. Debugged using Vivado synthesis, AXI interconnect waveform timing analysis and JTAG debug.
  • Wrote Windows 8 Media Foundation Transform in WPF to test incoming video camera signal. Modified SystemC code to perform simulation and transaction level modeling (TLM) of HDMI circuitry with HDCP DRM to create a virtual platform for software device driver development. Used TCL/TK in Vivado user interface.
  • Used Teledyne LeCroy USB protocol analyzers to verify USB traffic.
  • Implemented interrupt mitigation optimization in Ethernet driver softirq, through dynamic modification of NAPI weight and other modifications to netif rx and netif rx schedule code and polled sk buff/skb handling.
  • Used Wireshark to verify TCP/IP and UDP traffic.
  • Ported SMX kernel to platform and implemented queues and pipes for EHCI USB Class-based smx stack implementation for mouse and HDD.
  • Developed Microblaze systems for HDMI test with Vivado. Worked on IPMI/BMC software to monitor sensors on PCB and communicate data.

Software Engineer

Confidential, Milpitas, CA

Responsibilities:

  • Designed and wrote Gnu gcc C/C++ and Assembly Language on Tensilica instruction set for Nucleus RTOS, for G3 PLC 802.15.4 wireless communications MAC, adapted to a wired PHY for energy smart power systems.
  • Involved 6LoWPAN, IPv6, Load, Commissioning, EAP-based authentication/encryption methodologies.
  • Ported features from Zigbee 2.0 and Smart Energy Profile specifications to the G3 adaptation application layer.
  • Wrote algorithms and code to implement OFDM Modem with 128 IFFT/FFT-generated carriers of DBPSK and DQPSK.
  • Interfaced energy metering data to DLMS/COSEM/IEC 62056 protocols.
  • Performed testing of individual carriers under various noise conditions.
  • Worked on port to Windows CE 7 NDIS 6.1 wifi functionality.

Software Engineer

Confidential, Cupertino, CA

Responsibilities:

  • Designed and wrote C++ and Java/Dalvik using the NDK and Eclipse to develop video streaming for cell phones running ARM Cortex M3/M0/M4 core SOCs, utilizing RTP, RTCP, UDP and porting that methodology to HTTP Live Streaming (HLS), with ASF and PIFF streaming file formats.
  • Developed Javascript code for HTTP web interface.
  • Worked on design for IOS/Xcode/Cbjective C implementation.
  • Worked on OpenSSL cryptographic scheme involving BGP routing through ASIDs.
  • Worked on QNX Neutrino port with QNX Momentics and Photon. Used Perforce source control.

Software Engineer

Confidential, Grand Rapids, MI

Responsibilities:

  • Designed and wrote software for Linux, U-Boot, GStreamer, OpenMAX, V4L2, ffmpeg and ARM926EJ-S to configure and exploit integrated devices of TI TMS320DM365 on Leopardboard for Composite Video and Component Video SDIO file input/output and Audio in MP3 and AC3, using VirtualBox and GNU tools such as gcc, gprof.
  • Gathered audio PCM stream from pcb I2S interface. Implemented SMX kernel USB class-based Nand flash memory interface on Coldfire MCF52211.
  • Worked on integration of Coreboot and CBFS file system into PCB.

Software Engineer

Confidential, San Diego, CA

Responsibilities:

  • Designed and wrote Gnu gcc C++ and Assembly Language for ARM and x86 Linux kernel space device driver modifications and optimizations to Adobe Flashplayer Lite along with Linux user space application to implement Sorenson and On2 VP6 video and audio decode from .FLV files.
  • Modified Linux drivers for i.MX21 Arm926EJ-S core microcontroller to utilize YUV-RGB color conversion and MPEG-4 H.263 decode capabilities of integrated eMMA video accelerator.
  • Wrote Gnu Makefile and utilized gdb/gdbserver and gprof.
  • Used Codewarrior to write video acceleration for Atmel AT91SAM9263 to perform color conversion for 4:2:0 YUV data.
  • Integrated rdesktop to access Windows tools and files.
  • Wrote code to implement video acceleration utilizing Neon SIMD instructions on OMAP3503, using OMAP35x EVM evaluation module running Linux and Busybox. Implemented USB interface to Flash memory USB devices. Performed analysis and modifications for upgrade to H.264.
  • Optimized audio routines utilizing ALSA/PulseAudio. Added Bluetooth L2CAP code for Bluetooth v3.0 + HS AMP (Alternate MAC/PHY) 802.11 PAL, supporting A2DP and VDP Bluetooth Profiles. Implemented FFT algorithms for G.722 transmission of voice data. Modified bootstrap for Arm11 MPCore based CT11MPCore board.
  • Performed some Android porting, using Eclipse to set up intent receivers, activities, services and XML layout.
  • Wrote Python programs to assist Make and Build process, and for website MYSQL database support.
  • Wrote Javascript/JQuery/PHP to support HTTP web interface. Implemented SIP VOIP with RTP/RTCP streaming functionality.
  • Wrote ONFI support code in Coreboot BIOS Bootloader to probe, configure and read/write NAND flash memory.
  • Wrote BIOS bootloader code to support SD/MMC/eMMC 1-bit and 4-bit protocols, along with SPI for external flash memory module.
  • Ported code to i.MX53 using Arm Cortex and NEON. Implemented initial i.MX31 demo using FreeRTOS. Implemented UPNP DLNA interfacing through SSDP M-Search discovery. Used VirtualBox linux virtualization with Ubuntu for development platform.

We'd love your feedback!