Objective:
|
Continue to grow my depth and breadth of knowledge in all areas in and out of
computers and engineering through my work, personal projects, and personal
research.
|
Education:
|
Graduate classes, Computer Science
GPA 4.0
(All masters class work is finished, thesis is not complete)
California State University, Chico
|
Chico, CA
|
Bachelor of Science, Computer Science
Minor in Mathematics
GPA 3.4
California State University, Chico
|
Chico, CA
May 1997
|
De Anza College
149 quarter units completed with honors status
|
Cupertino, CA
|
Computer Skills:
|
- Systems -- IBM PC, SGI, SUN SPARCstation, HP PA-RISC, Alpha, IBM RS/6000,
Intel based embedded systems, PPC embedded systems, MIPS embedded
systems, XScale embedded systems
- Operating Systems -- Linux, HP-UX, Solaris, Irix, True64, Mac OS X
- Languages -- C, C++, Objective-C, Java, 80x86 Assembly, Alpha Assembly,
MIPS Assembly, Arm Assembly, Bourne Shell, SQL, PL/SQL, Perl, Unix shell
scripting
- Personal Experience -- Client/Server BSD socket programming, OpenGL
programming in Unix and Windows NT, Java game programming
|
Experience:
|
Senior Software Engineer
Vivato
- Helped bring up a custom Motorola 8245 based board in Linux
- Debugged various 802.11 kernel driver issues
- Designed and implemented a Cisco style CLI parsing engine
- Designed and implemented a shared memory vector data storage
- Ported various open source tools to embedded PPC system
- Fixed bugs and added features to many open source tools
- Designed and implemented an extensible multi-platform build system
- Software project lead on two new access point products from start to
completion of products
- Implemented BSP for IDT MIPS based board, this includes a custom boot
loader, Linux kernel modifications, and device driver support
- Ported all existing product software to IDT MIPS and Intel IXP42x for new
access point products
- Designed and implemented a hardware abstracted system information
library for getting and setting information on various aspects of our
products
- Implemented C based CGI web configuration pages
- Implemented BSP for IXP42x based boards, this includes Redboot
modifications, Linux kernel modifications, and device driver support
- Ported kernel modifications from our various products' kernels to a
single kernel based on the latest 2.4.x kernel to ease maintainance
- Added features to and fixed bugs in the Atheros driver
|
November 2002-present
Spokane, WA
|
Senior Software Engineer
Allegro Networks
- Identified requirements and recommended implementation directions for
the infrastructure group
- Designed and implemented a resilient file management strategy with
synchronization and hot standby support
- Designed and implemented a secure network terminal server that
distributed logins from a single CPU to multiple CPUs in a two stage
login
- Designed and implemented a terminal multiplexer for all cards in the
system over an i2c serial device
- Did extensive performance analysis and modified code based on
findings
- Integrated code from several engineers debugging problems that arose
- Scoped out and implemented a Cisco style Cli under Unix with a
flexible plug-in architecture used by all other software groups
|
February 2001-October 2002
San Jose, CA
|
Computer Scientist
Lawrence Livermore National Laboratory
- Tested drives and RAID systems to characterize performance under Linux
- Wrote a kernel RPC mechanism for a network block device over the Elan
NIC for a parallel file system
- Worked on porting a parallel file system from True64 to Linux
- Worked on a device driver port for a high speed network card for
Linux
- Worked on a port of software to Linux from True64 for job scheduling
and resource management on a Linux cluster
- Installed, configured, and secured Linux on an Alpha cluster
- Contacted vendors for new hardware procurements, including working
with vendors on providing device drivers and support for Linux
|
October 1999-February 2001
Livermore, CA
|
Research & Development Engineer
eSoft, Inc.
- Designed and implemented an IMAP mail client in Java
- Created back-end solutions for a web-based system administration
product for a headless server running Linux
- Wrote device drivers for hardware that did not already have support
under Linux
- Helped debug and fix Linux kernel device drivers for components we
use
- Designed and implemented a platform independent configuration system
for our web-based management system
(it now works with Debian or Redhat and could be made to run on any
Unix system)
- Helped with new product ideas and ways of improving current products
|
January 1999-September 1999
Boise, ID
|
Software Analyst/Engineer
MLC & Associates, Incorporated
- Design software solutions in Java to meet customer needs
- Program Java database applications with a network model in mind
- Optimize database and Java source for speed and efficiency
- Design and implementation of SQL back-end code on a database server
|
January 1998-August 1998
Irvine, CA
|
Computer Science Instructor
California State University, Chico
- Developed the curriculum for the Advanced Unix Systems Programming
class
- Lectured on Unix programming in C
- Helped students during office hours learn more about C and Unix
systems programming
- Wrote notes on the class based on personal experience, information
found in books, and information on the Internet
|
August 1997-December 1997
Chico, CA
|
Software Engineer
Hewlett Packard
- Wrote Oracle server back-end code
- Linked Oracle database to Oracle Web Application Server
- Wrote ProC code for CGI authentication on Unix platform and Oracle
database for a web application
- Administered the Oracle test database for our group
|
January 1997-November 1997
Palo Alto, CA
|
PC/Unix System Administrator
California State University, Chico
- Integrated the Unix files servers with the PC network
- Maintained the PC network (50-60 PC's) in the Engineering building
- Install new applications for use over the network
- Trouble-shot problems in the network/software
- Wrote batch files and startup scripts for Windows 3.11
- Automated network installation and OS repair utilizing bootprom
facilities
- Repaired and replaced faulty equipment in PC's
|
April 1995-December 1996
Chico, CA
|
Network/Unix System Administrator
TTCI
- Registered new domains with the Internic
- Set up mail and web accounts for new customers
- Installed and maintained web servers with multiple virtual
domains
- Installed and set up network equipment
- Wrote Shell Scripts to manage user accounts
- Administered PPP modem bank
- Added new components to Linux kernel for our servers
- Set up and maintained Usenet news feed
|
November 1995-March 1996
Chico, CA
|
Applications Programmer
Castle Rock Computing, Inc.
- Programmed various Windows applications for network
administration
- Used SNMP extensively to poll data from RMON devices
- Wrote C code for packet decoding used in network sniffing
- Handled the administration of accounts on a Sun SPARCstation
- Installed equipment on a Sun SPARCstation and on IBM PC's
|
May 1994-January 1995
Cupertino, CA
|