Software Development / System Administration
Specializing in *nix (Linux, BSD...) environments.
Open, depending upon the opportunity, with a preference for Beijing, China (where I live). Telecommuting is a preferred option.
OPEN SOURCE ACTIVITIES
Self-Employed: 10 Years
- Software Development:
- Python & PHP web applications
- extensive shell scripting
- Django framework
- Big Data analysis
- Facebook, Amazon AWS, Github, Google BigQuery APIs
- Linux System & Network Administrator:
- Amazon Web Services / Cloud Servers (python-boto, AWS CLI, console): EC2, VPC, S3, IAM, Route53, CloudFront, CloudFormation, etc.
- Rackspace Cloud Servers
- Deployment / management with Puppet and AWS CloudFormation
- Large scale DevOps on AWS
- Server monitoring with Munin and Zabbix.
- Server security hardening, backup strategies, Apache and MySQL tuning.
- Postfix / Dovecot / MySQL mail servers ("ISP-style", etc.)
Raytheon Systems Company: 3.5 Years
Worked on the TracView Air Traffic Control System, a diverse networked UNIX C/C++ environment. Experience includes both Radar Data and Flight Data functionality:
- Prepared and conducted formal acceptance tests for customers (FAA, Germany, Vietnam).
- Performed internal regression and Y2K testing.
- Spearheaded initial organization of Y2K work, writing Test Plans and Procedures.
- Collaborated with software and system engineers in the identification of problems.
- Frequent international travel to deliver systems on-site to customers.
- Performed software maintenance (fixing of problem reports) for several months.
Hughes Canada Systems Division: 2.5 Years
System Test Engineer
Worked on the Guardian Air Traffic Control System. Focused primarily in the Flight Data Management area, in an Ada UNIX environment:
- Designed and conducted software component tests and system-wide regression tests.
- Prepared/conducted formal acceptance tests for customers (China, Saudi Arabia, Indonesia)
Unisys GSG Canada: 3.5 Years
Worked on the Canadian Patrol Frigate Program, a distributed Naval command and control system. Areas of responsibility included Hull-Mounted Sonar, Maintenance Test, and Simulation modules, in a CMS2-UNISYS 1100 environment:
- The target system was a network of small ("mini", as opposed to "mainframe") hardened / militarized computers, with very limited memory, on a warship. The development system was a mainframe where we wrote and compiled the code, transferred the binaries onto a portable disk drive cartridge, and then installed the cartridge in the target network for testing on the target devices.
- Both the target mini-computers and the mainframe were products of UNISYS, and the whole software/hardware environment was proprietary. The mini CPUs had their own UNISYS instruction sets and corresponding assembly language (called ULTRA-16 - all I/O was coded in assembly) and the high-level language used was also a UNISYS product called CMS-2 (similar to Pascal).
- I contributed to several modules, but the main one was that of the Hull-Mounted Sonar. This module talked directly to the sonar hardware, accepting sensor data from the sonar and issuing commands to the sonar. There was also a display component, giving the sonar operator a visible indication of the physical state and mode of the sonar, and the location of target echos. There was also a simple tracker, which extrapolated recently reported target positions so as to predict future target position. A typical real-time software kind of application.
- I extensively re-wrote the control software for the Hull-Mounted Sonar, correcting a wide range of software problems, ranging from low-level interface and device-control malfunctions through sonar tracking anomalies and operator interfaces.
Canadian Navy: 3 Years
Lieutenant, Combat Systems Engineer
- One year of sea time as a Combat Systems Engineer. Responsible for the safety and operation of the ship. Supervised a duty watch of up to 40 crew.
- At Fleet Software Support Center, designed, coded, and implemented a PC-based "Configuration Status Accounting" database to track software changes.
Mandarin Language Studies
(One-year full scholarship from the China Scholarship Council.)
M.Sc. Physics (Astronomy)
Université de Montréal
(Two-year full post-graduate scholarship from the Natural Sciences and Engineering Research Council of Canada.)
B.Eng. Engineering Physics
Royal Military College of Canada
High Level Languages
Python & PHP
Assembler: Intel, Motorola
UNIX: Linux, OpenBSD, NetBSD, etc
Linux Distributions: Debian, Ubuntu, CentOS, Fedora, Archlinux
Postfix, Exim, Dovecot (e-mail servers)
Apache/ PHP (web server)
MySQL (database server)
Backuppc / obnam / dirvish / rdiff-backup / rsync (backup software)
Networking (wired & wireless)
Firewall / Router: Shorewall & Firehol
Security: E-mail & File System Encryption