I'm working at TomTom - the No.1 GPS navigator manufacturer in the world. Not only do I have many years' kernel development experience with Linux internals, including Embedded Linux device drivers development and debugging, but also demonstrated excellence in C/C++ design and coding and expertise in data structures, algorithms, and complexity analysis. I have lots of socket programming experience as well as knowledge about MOSPF, DVMRP, DHCP, SMTP, POP, MIME and other TCP/IP network protocols. Meanwhile I have rich knowledge of Linux kernel tailoring, kernel performance tuning, file system, multithreading, memory management, process scheduling, boot loader, softirq, cross-compiling toolchain. Incidentally, I am familiar with Assembly language, Qt 4.x and Visual C++. Last but not the least, the Dutch government knows and respects my expertise and value, so she gave me a 30%-ruling tax free allowance.


reading, walking and swimming


I would like to find a full time permanent job in the Netherlands, that would be better if in Amsterdam because I live near Amsterdam, the Netherlands. My mobile phone is +31 631225110Of course, I can ALSO work in Ireland, UK or USA, if the future employer is willing to sponsor me to immigrate to any of them.

Work History

Work History
Oct 2008 - Present

Senior Software Developer

TomTom International BV
C/C++ Embedded Development Linux Kernel & Device Driver GPS Navigator Software (Underlying technique, legacy C++ codes maintenance) I'm such a high-tech talent with specific expertise that Dutch government gave me a 30%-ruling tax free allowance.
2008 - Present

Senior Software Developer

Feb 2006 - Aug 2008

Principal Software Developer

Lien Fua Mobile Software Design Inc.
04/2006--10/2007: USB Jog Shuttle Driver Develop Platform: Linux (2.6.18 Kernel) + Qt v4.3 Development Tools: gcc, gdb, kgdb, make, vim Project Description: We use drivers/usb/usb-skeleton.c and drivers/hid/usbhid/usbkbd.c under Linux Kernel Tree Architecture as development framework, and we also referred to many concepts and code snippets from PCI template driver to build a standard USB Jog Shuttle Driver conforming to the open USB protocol specification. The test stub driver was developed by Qt v4.3. Responsibility: I was responsible for the whole project including coding, document, debugging, test and module's startup shell script.
Feb 2004 - Feb 2006

Senior Network Software Developer

Xun Guo Network Inc.
02/2004--02/2006: The implementation of project BASBA Develop Platform: Unix + Oracle + Qt v4.0(for front-end client) Project Description: The project BASBA (Billing and Authentication System for Broadband Access) served "Telecom ISP" like China Telecom. We used Linux as gateway and the billing software development platform. The main architecture consists of 4 layers: Radius Server (usually located in ISP) - Transaction management Server - Access gateway - Client. The access gateway designed by us is very simple but ROBUST, which only opens one single port to respond the requests from clients in order to reduce security hole, and it's also worthy of mentioning that this port is an UDP port for the reason UDP is safer than TCP, we just simply discarded the wrong packets instead of processing and responding them to prevent the malicious attacks. In addtition to that, client's password would be encrypted by MD5 processed by dynamic encryption key, so it's safe enough to anti-monitor and anti-decrypt. Responsibility: writing MD5 encryption module and built a private UDP Socket function library for reuse
Oct 2002 - Jan 2004

Software Developer

Jummfa Software Inc.
11/2002--01/2004: DVDCutter Professional v5 Develop Platform: Windows 9X/2000/XP/2003 Development Tools: Visual C++, Qt v3.0(Under Linux) Project Description:The 12 main modules and core algorithm are our work emphasis lasting for more than 1 year to my team, and the other 2 teams are mainly responsible for GUI and Encryption respectively. Responsibility: I was responsible for the core algorithm, part of GUI design work and the whole project's integrity. The pretty UI was developed mostly with VC++ and partly with assembly language for the sake of optimization algorithm processing "Dynamic Effects" which would consume much CPU time and other system resource. For this purpose I encapsulated a MFC wrapper class and built it into a DLL specially, and for future better reuse I added it into our own graph class library.
Aug 1991 - Aug 2002

Telecom Software Engineer

China Telecom
Project Description:Construct the huge volume's fiber network to cover the whole Nanjing city, including both downtown and uptown, and at the same time we're also requested to implement PDS (Premises Distribution System), and mount the corresponding equipments and make the corresponding software deployment. Responsibility: Project Planning and Development; Develop the broadband customer end software. Remark(after that): Because of work's requirements (VOIP) and the fact that the NGN(Next Generation Network) would be the overwhelming evolutionary trend, based on the SOLID understanding of the original SS7 I basically study sorts of relevant protocols such as H.323, H.225, H.245, H.235, RTP, SIP. Especially I put my emphasis on MGCP(Media Gateway Control Protocol) model, through which the soft switch system can conveniently control the media/control stream's connection, setup and release via media gateway and its terminal.


1996 - 1999


Nanjing University of Aeronautics and Astronautics
I wrote an Email Client Prototype with C++.





embedded development

TCP/IP protocols family

socket network programming

programming in Linux and Unix

Qt GUI development

Windows API / MFC


C language


Nov 2008 - Nov 2008

Certified Linux device drivers

at computing