Audio Android Software Engineer Resume
SUMMARY:
- 9 + years’ experience in embedded systems development on Android Linux, QNX, Window & RTOS platform. Experience in Wireless Protocol stack, TCP/IP, 3G Applications and Embedded Firmware, embedded Application development using C/C++.
- Experience with POSIX with TCP/IP network sockets.
- WiFi firmware development for 160 MHZ .
- Android product development, using Android JAVA, JNI, NDK, SDK, XML, API, HTTP.
- Experience with Linux Audio Driver, ALSA and Android Audio HAL.
- Experience with BSP development for QNX based automotive infotainment using sabreARD with dual iMX6 core, worked with bootloader(IPL), startup code, I2C, CAN, NOR Flash drivers.
- Experience with Android Network socket programming, Event driven Asynchronization programming, Cloud based Authentication/ Identification.
- Extensive experience with Linux operating systems such as Kernel Module development/Internals 2.4 - 2.6, Vxworks5.4, Device Driver Development, debugging and porting.
- Linux tool chain for ARM core, U-Boot (bootloader).
- Multi processor shared memory parallel programming.
- Intel DPDK experience, went through the professional with wind river.
- Ability to read and understand the Schematic.
- Experience with RTP/RTSP and P2P layer
- Experience with IPDSLAM, ADSL, VDSL Modem and Knowledge of BLM and ONT’s
- Experience with SNMP, MIB, MIGSOFT, DUX, WireShark.
- In depth understanding and hand on the DSP, IIR/FIR Filter, DFT, FFT, Audio/Image processing.
- Worked with the Wav, MP3 and Riffle file format data.
- Extensive exp on Network programming, Socket programming TCP/IP, UDP, real time application and Linux Internals & porting for Wireless systems and debugging, modifying, optimization of source code
- Experience on UNIX System V IPC, Multi-threaded embedded applications.
- Experience on 3GPP UMTS (WCDMA) RRC (Radio Resource Control) Layer
- Experience on Red-line (WiMax/IEEE 802.16e) Base Station Development.
- In depth understanding of Networks protocol stack 2G, 3G and 4G (GSM, CDMA, UMTS/WCDMA, 802.16 WIMAX protocols, WIFI/WLAN, LTE, IMS, IP Network QoS) 3GPP and 3GPP2 standards, log analysis.
- In depth knowledge IPv4 & IPv6, Dual mode stack, router, switch.
- Hands on experience on L1, L2, and L3 layers of stack.
- Complete Product Cycle (Analysis, Design, Development, Testing and Maintenance) of Real-time Software for various target hardware.
- Experience of designing, programming, integrating and debugging device drivers (USB, RS232, LVDS, PCI).
- Strong Understanding of Access methods, Power Management, Digital Signal Processing, Encoding /Decoding, sampling, Error correction, Flow Control, QoS, Security, OpenSSL etc
- Experience of designing, programming, integrating and debugging ARM 7 Processors, x51.
- Experience in using various tools like ARM RVDS, ADS 1.2 Code warrior.
- Ability to generate clear and precise comments on presentation, readability and reusability of code
- Expertise in Design, development and testing of Device Drivers for various ARM SoC processors in Linux 2.6.18.
- Experience on Multi-OS support (embedded Linux, Windows XP, VxWorks, and INTEGRITY) development platform.
- Experience in C coding for digital signal processors like Tiger Sharc TS201, Understanding of multi processor DSP Architecture boards, SMP.
- Good experience on initial board brings up and new processor brings up activity on Versatile PB, ARM926EJS processor (including porting RT-Linux on pre-silicon).
- Kernel porting and customization - on Linux.
- Boot loader porting and customization - Did for U boot loader.
- Good understanding of Hardware Communication Interfaces, reading Schematics and low-level device programming.
- Experience on Ethereal, Mini-scope, MATLAB, NS2 simulations
- Experience in Cross Platform Tools like Keil, GNU Tools.
- Hands on experience in Design, Development and Integration of Diagnostics software, Simulators, Emulators and Debuggers.
- Good understanding of I2C, CAN, AMBA protocol.
- Hardware Designing with HDL like Verilog, Reliable and efficient code for simulation and synthesis, mainly for Xilinx FPGA.
- Experience with version Control and Open Source Tools such as SVN and CVS, and IBM Clear Case.
- Participated in all phases of product development of a software product. Have Experience of Software Development Life Cycle (SDLC) that Includes Requirements Analysis, Specification, designing Development, and Testing.
- Self-Motivated and have excellent problem solving skills Ability to work independently or as a team member with strong organizational and preparation skills.
- Experience in, delivering seminars on Knowledge Sharing Sessions and mentor Juniors
- Highly conscientious in the follow-through, planning and organization of new ideas/products and readily accept new challenges
TECHNICAL SKILLS:
Programming Languages: C, UNIX, Verilog (HDL), Assembly, JNI, OpenGL, C++, AndroidJava
Tools: Visual C++, VDSP++, RVDS 3.2 with Eclipse, ADS1.2, Xilinx ISE 9.2i, KEIL, MATLAB, Xilinx ISE 9.2i, ModelSim 6.3, Synplify Pro c-2009.03, Tornado-2 (VxWorks 5.4) . QNX IDE 6.5/6.6, NDK/SDK
Analysis and profiling tools: Astro Stress Tester, Miniscope, MATLAB, Ethereal, QXDM
Protocol Stack: UMTS, WIMAX, GSM, CDMA 2000, LTE, Bluetooth - L1, L2, L3
Version Control: IBM Clear-Case, CVS, SVN
Buses: RS232, I2C, PCI, USB, AMBA, CAN, FLASH
Operating System Platforms: Windows XP, Linux 2.6.18, Linux 2.4.22, RTOS (VxWorks, Rtlinux 3.2), Linux 2.4.22, prebuild Rtlinux Image for ARM(2.6.24), VmWare with OpenSuse10.2, Android (ICS, JB), QNX
Compilers/Debuggers: GCC, ARM-elf-GCC, GDB, JTAG
Operating System Concept: Inter Process Communication (IPC), FIFO, Shared Memory, ISR, Pipes, Semaphores, Process Synchronization.
Scripting: Python, Tcl/Tk, perl
Processor Architecture: TigerSharc201, ARM926EJS, x86, ARM7TDMI, MIPS, iMX6
Multimedia: Image(BMP, JPEG), Audio(WAV, RIFF), Video(MPEG1,2,4), CODEC and DSP Filters
Access: OFDM, OFDMA, DFT, CDMA, TDMA, FDMA, MIMO, DSP
Applications: Microsoft Office Suite, Adobe
PROFESSIONAL EXPERIENCE:
Confidential
Audio Android Software Engineer
Environment: C, Android JAVA, JNI, Linux, GIT, Android 4.2.2, SDK, NDK, XML
Responsibilities:
- Audio distortion and delay issue while in Call over the Bluetooth.work with Phone applicaton AudioFlinger, Audio routing layer, HAL, ALSA.
- Phone application start-up optimization in delay and receiver crash fixes. create d a dummy application to simulate the behavior to isolate the behavior at different layers.
- Performance and maintenance of whole system.
- Documentations and design proposal for the issues.
- Debugging, bug fixing and reporting
- Tracing, performance tool, Automotive, BT, Home Screen, Media player, multithreading, priority, tinyplay, tinycap, oscilloscope, I2C, I2S, Schematic, Hardware modification.
Confidential, San Francisco, CA
Sr. Software Developer
Environment: C, DPDK, Makefile, GIT, Linux
Responsibilities:
- Design the Architecture for the financial exchange system’s feed handler.
- Reading the PCAP file over the interface with DPDK
- Documentations and design proposal for exchange system.
- Coordinating with the remote team and online meetings.
- Went through Wind River for Intel DPDK.
- Network Virtualization Function (NVF), PCAP library, Hugepages, RX/TX queue, Driver.
Confidential
Hardware/Firmware Engineer
Environment: C, Linux, WIFI, Verilog, iMPACT, perl, GIT, python
Responsibilities:
- FW modification to support 160 MHZ.
- Debugging and bug fixing for MPDU truncation, RX overflow, etc.
- Compiling and building the Firmware image for different platform.
- Firmware modification to stop PHY while getting RSSI counter mismatched.
- FW modification for beam-forming and 4 Spatial streams (enhancement for the MU-MIMO).
- On chip debugging for the LDPC issue.
- WIFI FW bring up on the NL994 setup.
- HW scheduler offloading for aggregation enabling module implementation and protection enhancement.
- RTL wave form debugging (debugged the HW scheduler the offloading).
- Other, RTL, MAC, PHY, Layer-1, Layer-2, PCIE, OCD, iMPACT Xilinx, IOT, Firmware, MIMO (2/4 Chain), LauterBach/Trace32 debugging, AP161, xt-gdb, FPGA, kernel failure diagnostic, KGDB, openWRT.
Confidential
BSP Software Development Engineer
Environment: C, QNX, Linux, POSIX
Responsibilities:
- To meet the earlier boot-up time, Enhance the boot-loader (IPL) by integrating the NOR Flash and I2C to boot the system from the parallel NOR flash (can address the image directly instead of scanning ) and scale the QNX-OS image to Minimum to boot-up the system only. We achieve the 441 ms to bring the application up so far. GPIO pins of IMX6 were configured to measure the time over oscilloscope.
- Write an application for QNX to perform the timing measurement and Keypad status using mapped the I/O.
- Real time POSIX Message Queue implementation for the Client/server scenario which act as the receiver and receives the message periodically.
- OpenGL API’s to render the data (color cube) to LCD display.
- Debug the CAN driver using the CANoe controller and fix the issues like, DLC issue, Mailbox ID, RX and TX issue and prepare documents.
- Deign the event handling for the CAN activities to inform about the receive/incoming messages in network.
- Documentation for the complete boot-up process measurement and analysis.
- Other, Honda, Automotive, Flash driver, GPIO, SDCARD, DMA, I2C, CAN, SPI, Timer, Security, OpenGL, Schematics, Oscilloscope, LVDS.
Confidential
Mobile Android Application Developer
Environment: C, JNI, POSIX thread, Java, C++, XML, Linux, Android, Network socket, Fingerprint, Algorithm
Responsibilities:
- Resign the architecture to support the remote and local service on the handset device supporting multithreaded socket communication (Support both Async and sync).
- Implemented local service to communicate with controller and server for authentication, enrollment and Identification, supporting encryption/Decryption.
- 3rd party Library and API implementation in the Android native (NDK) JNI multithreaded environment.
- Full integration of Fingerprint reader driver, RequestListener, HTTP, UI and UIListener etc debug and fix
- Documentation of 3rd party API library and architecture design.
- Demo test application for validating the API's library.
- Debug, complex analysis and fix client’s issue for existing product.
- Other, TCP/IP, HTTP, GPS, OpenSSL, Bonjour Fingerprint Reader, AuthenTec Reader, Networking.
Confidential
Network Software Developer
Environment: C, Linux, Embedded, Protocol stack, VirtualBox
Responsibilities:
- Develop the Notx task management framework which supports allocation/deallocation tasks without adding extra overhead and also provides named memory regions for each task. This allows a task specific memory block be prepared with data without task being schedule.
- Develop the multithreading management which supports Round-robin scheduling for task processing and self scheduling, which means that each callback has quick turnaround and if extra execution time is need a rescheduling is requires.
- Develop Static and dynamic Memory management for notx.
- Test Driven development uses the test-dept framework for unit test.
- Debug and analysis with GDB.
- Other, Network programming, TCP/UDP, Layer-2, Layer-3.
- Working on the RTSP/P2P layer for the Wireless Display.
- Optimization and profiling for Video compression, compute PSNR algorithm on each H.264 video frame and optimized for parallel processing (HyperThreading) Intel -i-7 with 8 CPU core using openMP.
- Working on the Message interface between HAL and application using the TCP client server socket communication to allow the access to other Android layer to share messages.
- Working on the Wireless Display modifies interface to Hardware composer layer for Audio/Video Hardware capturing and processing.
- Debug, fix and tested Wireless display applications, video tearing and pausing, audio routing issues.
- Worked on the USB-SERIAL Adapter low level device driver with relay board to automate the connectivity.
- Image complication for Linux Kernel /Android.
- Firmware failure diagnostic for different boards, USB-Serial debugger.
- Wrote a parser in c language for the configuration file generated (xml) through the Macros.
- Other, Fastboot, Flashing, logcat, NDK,SDK,ADB shell, REPO, GIT, P2P, HDMI, Shell scripting, JTAG Debugging.
Confidential
Linux Device Driver Engineer (Audio)
Environment: C, C++, Java, XML, UNIX, Kernel, GIT, WAV, DSP, MP3, python
Responsibilities:
- To simulate the behavior of Call, Write an Android application to assess the server API’s for the IN CALL and IN NORMAL mode and test the call routing enable/disable Bluetooth SCO while changing the audio path (Voice).
- Debug and Fix the Audio issues/defects, G-talk, Audio Flinger, stagefright, openMax, VOIP, Echo Canceller, Internet Radio, 3D effects fixing.
- Debug and Fix Camera Force close issues, Video buffer corruption issues, Camera ANR’s issue, face detection in Video Camcorder, USB MIC to support the Motorola dock station, RIL (Radio Interface Layer) Network, LTE, UMTS, H.264/MPEG encoder/Decoder, HDMI, JTAG etc
- Interface with Camera UI, also added new feature face detection (Auto Focus and balance) for camcorder for ICS
- Compiling and building the Linux Kernel /Android for different products.
- Design the Test Documents for verification and validation of the new product (pasture) and active in discussion for development design.
- Understanding of Cloud to Device messaging
- Other, Fastboot, Flashing, logcat, ADB shell, REPO, GIT, OpenGL.
Confidential
Network/C Developer
Environment: C, UNIX, Layer -3, Python, UDP, SNMP, MIB, IPv4/6, TL1, VLAN, GPROF
Responsibilities:
- Automated the CPU and memory profiling for sanity system - Created the multi-threaded application for running the python script in parallel and manage the file I/O to create the graph and logs.
- Working in Bug fixing (Trouble report - TR) Analyzing, Debugging & fixing system related issues using Ethereal, DUX, MIGSOFT for different area’s in the FTTN/IPDSLAM cluster like: TL1 console, DHCP, SNMP. kernel failure diagnostic, bootloader and bootup setup configuration, hardware related issues.
- Involved with other activity likes updating the Firmware, RADIUS server, Layer-3, Layer-4, Layer-2, IEEE802.1X Authentication, EAP, Spirent Test Center (STC) for generating Traffic with single/double VLAN, QOS, and IGMP. Configuring the Alcatel Switch, DELL Switch Configuration for different Topology, and handle DHCP for IPv4 protocol, Cisco Secure ACS v3.3 RADIUS, Knowledge of BLM & ONTs, design documents etc.
- Designing, developed exchange of the message state machine between the UTRAN and UE - RLC Layer
- Configuring, Building OS and U- Boot and Embedded System Bring up.
- Multi- threading and scheduling synchronization for packet transfer over the Linux based TCP/IP Network stack and Device Driver enhancement.
- Working in Bug fixing and analysis specific Device driver. Analyzing, Debugging & fixing system related issues using GDB based debugger and code optimization and Profiling.
- Update CDMA EVDO neighbor lists with in corporation of missing neighbors.
- Troubleshoot drop calls, access fails in both 3G voice as well as data, log analysis.
- Mentor the team on 3GPP (GSM/UMTS/LTE) standards for development and testing.
- Design for PCI Interface Includes HLD, LLD and other Documents
- Code is written using Verilog HDL in Xilinx 9.2i and verified in ModelSim 6.3.
- Test Plan, test Bench creation, Simulations
- Test setup and running test cases & Bug fixing
Confidential
Environment: Windows XP, C, Visual C++ (Visual Stdio 6), Tcl/tk, VxWorks
Responsibilities:
- Involved with Multiple SS Simulation for Single BS
- Testing of flows of services between SS and BS with Astro Tester(PCT Only)
- Responsible for the Development & Testing of Wireless Product for WiMax Devices. Components Includes:
- Decoding and Displaying BMP Files
- Integration of JPEG Library with Mobile Eye
- Network Programming, Socket Programming for Authentication and registration of Client with HTTP enhancement.
- Optimization of code for ARM
- Debugging Using Visual C++.
- Documents Developments for their Commercial Product Contains complete end - to-end Software Development Documentation Preparation (SDLC)
Confidential
Environment: Windows XP, C, VxWorks, Linux 2.4
Responsibilities:
- Study of API’s Provided By VxWorks
- Analysis Different API’s for Same Function for Different Operating System.
- Implementation Combined Bed (OSL) for Different Operating System.
- Documentation.
Confidential
Environment: Windows XP, C, VC++, MATLAB
Responsibilities:
- Extracting Wave and Riffle file format data.
- Extracting the Signal Samples and Play using C program and Using Matlab API’s (Simulation).
- Modification of the Sound Samples.
- Developed using BSD Socket Programming to Achieve Remote Access Server.
- Generating DSP algorithms echo, flanging, reverb etc.
- Debugging, simulating