Tom Lai's Site Index: |
My Sharewares |
Programming and Development Skills: Industry-standard software devlopment experience in C, C++, and Erlang/OTP. Proficient in LISP, Prolog, Java, Perl, Shell script, Assembly. Design experience in network protocol drivers: serial port, Ethernet, PPP, Frame Relay, ISDN, BACnet/IP (building-automation); and network applications: BACnet client/server, network printing, NTP/SNTP, DHCP, proprietary data exchange. Integration and debugging experience with third-party real-time operating systems: Kodak AMX, WindRiver VxWorks; and third-party networking softwares: FUSION TCP/IP stack, VxWorks SENS TCP/IP stack and BSP, Spider Software WAN protocol stack (Frame Relay, PPP, ISDN), Phase2 Routing protocol stack (RIP/OSPF/BGP); packet analyzer (Shomiti/IXIA). Knowledge in specs and source codes for network protocols: IP stack (ARP/ICMP/IP Options/UDP/TCP), BSD socket API, Windows Asynchronous Socket, Transport Layer Interface, Streams driver, MUX driver interface, Ethernet (IEEE 802.2/802.3), PPP (LCP/CHAP/IPCP/LQM), Frame Relay (LMI/MFE), ISDN (Q.931/Q.921), IP routing (RIP/OSPF/RDM), IP multicast (IGMP/DVMRP/PIM), SONET/SDH (ANSI T1.105/GR-253), ATM-SAR over SONET, RFC (IETF Requests For Comments), ITU (International Telecommunication Union) specificiations, VPN/Qos, fiber optics technology. IP Forwarding & Routing: Dynamic routing protocols, route/ARP table lookup, routing table management and distribution, ARP resolution, IP header verification, IP Options and ICMP generation for routers. Low-level hardware device interface: LCD display, label printer, RTC (real-time clock), EEPROM, Flash Memory, serial port. Experience and knowledge in Windows kernel-mode device driver: VxD and NT models, Win32 DDK, interactions with file system and device i/o control, NDIS (network driver interface specification), TDI-client (transport driver interface), protocol/ transport/ MAC/ minport driver design, SETUPX (undocumented), NDI (network driver installation) INF and DLL, NT script, WinDBG, VToolsD, Soft-Ice Debugger. Extensive experience in Windows programming: Microsoft Visual C++, MFC (Microsoft Foundation Class), Win32 Common Controls, common Win32 API's, multimedia API's, WinSock, system tray, thunking between 16-bit and 32-bit, setting system hooks, DLL design, Win32 SDK, InstallShield. Familiar with UNIX environment: shell script, tools, makefile, installation, Emacs. Configuration and trouble-shooting ability in Cisco router, Frame Relay switch, ISDN switch, NT server. Core skills: multi-threaded programming, real-time system design, object-oriented design, cross-platform development, operating systems, inter-process communication and synchronization, data structures and algorithms, database, artificial intelligence, finite-state machine design, network flow control/ congestion management, version control, design documentation. Work Experience: 1996 - Present Software Engineer / Technical Lead Education: Master in Computer Science Engineering Master Project: Substructure Discovery GPA 3.58/4.00 Bachelor of Science in Electrical Engineering GPA 3.93/4.00, Summa Cum Launde My e-mail address: tlai@canada.com |