Ralph Holland: Development Experience: Difference between revisions

From wiki
No edit summary
No edit summary
 
(397 intermediate revisions by the same user not shown)
Line 1: Line 1:
{| border="1"
This may be printed reasonably well-behaved to PDF with:
* chromium
* page size A3
* landscape mode
* approximately 17 pages
This page is [[:category:public]] and viewable ATM.
 
Note that I like learning and keeping abreast with technology, and hold CTO and CEO positions in a few companies.
 
=credentials=
* BSc (UNE) 1975 - 1979
* Dip Ed (UNE) 1975 - 1979
* Dip Com Sc (UNE) 1979
* MIEEE TO - to 2020
* MACS (Snr/CP) - to 2020
* Amateur Radio operator ex VK2ZZB (NSW) since 1975, now VK1BRH (ACT) - advanced class licence since 1990
* Private pilot aircraft (Jan 2004), with: Command Instrument Rating, NVFR, CSU, retractable, tail-dragger, and twin-engine endorsements.
{| class="wikitable"
|-
!Period
! Role
! Application
! Technology
|-
| Aug 2023 || systems administrator
|
{|
| [[image:disk.png|200px]]
| Developed (repeatable) procedures for working on operational/bootable Linux disks to
* clone to/from:
** RAW
** guest VM
: disk/images
* re-partition the images
* re-factor file systems
* modify /etc/fstab mount points
* perform apt update of debian releases via chroot
* bootstrap
** install grub for both:
*** MBR legacy
*** EFI
::boot from the RAW or VM guest images
:* replace kernel/initramfs
* convert to/from
** RAW disk image
** virtual disk images
: for deployment or testing.
These procedures were used to migrate and upgrade a Debian 10 unifi-video NVR to Debian 12, and with a different target partitioning scheme, to permit things like faster Operating System image backups and migration to larger/smaller disks.
 
The next step will be to use these design notes to develop declarative data/scripting that drives an update platform written in rust, and to port that application to run on any operating system.
 
Think of this as a glorified gparted that knows exactly how to partition while preserving the function of the OS image, and other file-systems on the updated disk.
|}
|
* LVM
* Linux
* Kernel
* file system
* mounts
* apt
* chroot
|-
| Aug 2023 || network engineer
|
{|
| [[image:web-script.png|200px]]
| Designed and developed a web-scripting language and web-scripting engine (using playwright API under the covers) to login to the corporate gateway/router web-server and restore all critical configuration for the network operations. This project was conceived because iiNet has periodically remotely factory reset the gateway to default configuration several times now (presumably when doing firmware updates and usually late at night). Formerly requiring me to manually restore many attributes through the only option, a web-browser interface. The web-scripting software is running as a cron job and it automatically restores the gateway configuration after it detects a factory reset of the gateway/router.
|}
|
* JSON used for web-script language
* playwright API
* node-js used for the platform
* chrome browser API
* HTML knowledge
|-
| Jun 2023 || security engineer
|
  {|
  | [[image:wireguard-vpn.png|200px]]
  | hosted separate VPN tunnels in a corporate edge-router (firmware) for use by: mobile devices, office devices, and experimental devices. Installed associated IP filter rules to provide DMZ isolation from the corporate network and to restrict access to the www access only for mobile iOs devices. Developed other VPN endpoints that can provide access to the corporate network for corporate equipment and for remote access. I set this up to use for our holiday in Vanuatu - we now permanently run with the mobile device VPN on our devices.
  |}
|
* Mikrotik Router Os
|-
| Apr 2023 || software/security engineer
|
  {|
  | [[image:network-travel-companion.png|200px]]
  | developed a network travel companion/road-warrior dual-channel Wireless Access Point that provides various web-browser configurable router/bridge (10) configurations for connection to motel wired or wireless networks to provide safe www access for mobile equipment while travelling. Written in node-js using systemd-networkd, supplying a web-server hosted on a raspberry pi running standard Debian (not openWrt). This should probably be migrated to rust.
  |}
|
* debian 11,
* systemd-networkd,
* node-js for the web-server
* raspberry pi
|-
| Nov 2022 - Apr 2023 || architect
|
{|
|  [[image:mirror-repos.png|200px]] [[image:security-icon.png|200px]]
| extended the node-js repository mirror with handlers to handle various repositories:
* Debian apt,
* node npm,
* Java mvn,
* Perl CPAN,
* R CRAN,
* Python PyPi,
* gnu mirrors.
:(About to investigate a rust cargo mirror.)
|}
* Perl,
* C++
* node-js,
* dynamic HTML
* css.
|-
| Sep 22 ||computer and electronics trainer
|
{|
| [[image:regional-training-logo.png|200px]]
| I am familiar with a variety of computer and electronics hardware.<br/>We formed https://regional-training.org on 20 Oct 2023 to start passing on our knowledge to the younger generations.
* https://regional-training.org
|}
|
* electronics
* computing
* instruments
* soldering
* programming
* design
* training
* remote learning
* remote collaboration
|-
| Oct 22 ||electronics technician
|
{|
| [[image:synology-nas.png|200px]]
| Repaired my broken Synology NAS.
* https://publications.arising.com.au/pub/Synology_DS1515%2B_repair
|}
|
* electronics
|-
| Nov 22 || security engineer
|
{|
| [[image:measures.png|200px]]
| declarative performance monitoring.
|}
|
* node-js
* chart.js
* dynamic HTML
* various linux
* synology OS
|-
|-
! Period !! Role !! Technology/Application
| Apr 2021  || System administrator<br/>backups
|
{|
| [[image:sysadmin-logo.png|200px]]
|  Wrote scripts and services to automatically backup data for:
* all mariadb databases
* all mediawikis
* gitblit repositories
* nexus respositories
|}
|
* bash
* rsync
* cron
|+
|+
| 2022 - current || security engineer || devoled node-js repository mirror for Debian apt, node npm, Java mvn,Perl CPAN,R CRAN,Python PyPi
| Mar 2021  || Security engineer<br/>Build from source
|
{|
| [[image:mirror-repos.png|200px]]
| designed and developed node-js read/write repository server and mirror for Debian apt repositories.
Server supports renaming-releases (/<os>/dist/<release>, generating new release, metadata parsers are provided for: .deb, .dsc. Release, Sources, Packages file for metadata analysis. (TBD: Index files to be generated from database on HTTP GET. apt-ftparchive is currently used to regenerate Release files but will be replaced via metadata processing when finalised.)<br>Integrating Build from Source scripts to use the local read/write repository server.
|}
|
* node-js
* dynamic HTML
* css
|-
| Nov 2021 || Architect
|
{|
| [[image:node-red-logo.png|200px]]
| developed architecture for environmental monitoring using modbus and IP. Solutions: node-red flows, grafana, influxdb and MQTT server - modernising modbus to IoT like provisions.
|}
|
* node-red
* node-js
* C++
|-
| Oct 21 || Architect
|
{|with
| [[image:listsd.png|200px]]
| designed distributed listsd processing servers to scan various security logs and maintain black and white lists that are uploaded by my corporate edge-router to block attackers. listsd is written in node-js, and is distributed across various servers and can scan logs such as:
* /var/log/authn.log,
* /var/log/fail2ban
etc to identify attacker IP addresses and maintain lists.
 
MQTT is used to keep white-list and black lists in lock-step asynchronously in all distributed listsd servers.
 
The router periodically obtains list deltas or full lists via the listsd HTTP server (on any server). These data may be obtained as lists, or as script that can then be executed by the router firmware to update it's lists.
|}
|
* MQTT
* node-js
* scripting
** cron / bash
** Mikrotik Router Os
** Cisco router
** ipTables
|-
| Oct 21 || Systems engineering
|
{|with
| [[image:eaton-9130.png|200px]]
|
* replaced all the SLA batteries in the corporate UPS.
* designed battery bank and extended the UPS with Extension Battery Module mode to 15 hours of standby
|}
|
* electronics
* system engineering
|-
| Sep 2021 || developer
|
{|
| [[image:mqtt-logo.png|200px]]
| implemented mqttd: a resiliant mqtt service running on Linux
|}
|
* node-js
* mqtt broker code
|-
| Apr 2021 || Security Engineer Arising Technology Systems
|
  {|
  | [[image:security-cam.png|200px]]
  | Evaluated and installed a roll-your-own IP security camera system using COTS IP camera and OpenSource NVR. I secured the camera network via my edge router filter rules to prevent cameras from accessing the www and phoning home. I used Reolink RLC-510/410 IP cameras connected via a PoE switch and captured with [https://shinobi.video/ Shinobi] - an Open Source (node.js) NVR deployed on an Intel NUC. Shinobi performs motion detection and recording.
Security Analysis was performed with a '''pcap''' capture from my edge-router and using Wireshark for packet inspection which informed my filter rules for the camera gaols. The goal was to provide a secure corporate integrated camera security system network that prevents infiltrations. 
  |-
  | [[image:pcap-wireshark.png|200px]]
  |}
|
* intel NUC
* nginx
* Debian 11
* reolink IP cameras
* Shinobi
* node-js
|-
| Feb 2021 - Mar 2021 || Systems engineer
|
{|
| [[image:watchdog.png|200px]]
| Developed a watchdog server based on a raspberry pi SBC that is used to supervise all corporate networking and critical server infrastructure. Equipment is recycled when the equipment cannot be probed. Probes cover the network edge-router, network switches, security cameras, NAS, two NTP servers, VTC server, web-servers and other critical infrastructure, including probing access to DNS. Network equipment is recycled when network connectivity fails. The watchdog server manages the power on these equipment, and reset lines on low power equipment. Equipment was designed with electrical and optical isolation and the relays fail-safe to equipment-on, and resets off. The watchdog server also employs a hardware watchdog timer circuit to ensure the watchdog server keeps functioning correctly. This project came about because it became problematic to ring my wife for her to gain access and be instructed to restore services while I was working remotely, like from places such as airports, because the amount of critical equipment keeps increasing in my home office - due to expansion and thanks to covid-19. (It's a self-contained solution rather than using distributed smart-plugs, which could have been incorporated into the design.)
|}
|
* raspberry pi gpio
* relays
* python
* bash
* cron
* networking
|-
| Feb 2021 || Researcher
|
{|
| [[image:Lora-inv.png|200px]]
|Investigated Lora and LoraWAN.
|}
|
* web-search
* raspbery pi HAT
|-
| Apr 2020 || Systems admin
|
{|
| [[image:jitsi-logo.png|200px]]
| [[image:Intel-NIC.png|200px|right]]
| I use this for secure VTC with my partners, friends and family instead of using insecure Zoom. This server provides fully encrypted  voice and video and interoperates with the Jitsi Meet Apps.
See
* https://jitsi.org/downloads/
developed /@ring web-app that rings in the web-browser when someone else connects to the specified VTC room. People can camp in the /@ring app waiting for a room to ring by using the room name or wild-card name matching. Conveniently a blank room name causes the web-app to ring when any VTC room is connected - thus monitoring the whole VTC server name-space.
|}
|
* jisti-meet
** node-js
** java
** jabber
** web-sockets
** HTML
** css
** HTTPS
** UDP
* Debian
* nginx
* Intel-NUC
|-
| Apr 2019 || Systems admin
|
{|
| [[image:linux-logo.png|200px]]
| [[image:mediawiki-logo.png|200px]]
| Migrated off ALL Windows servers, and re-hosted the following services on Debian linux:
* LAMP mediawiki
** https://wiki.arising.com.au
** https://publications.arising.com.au
** https://ir-gis.com
** https://family.arising.com.au
** https://regional-training.org
** https://dev.arising.com.au
** https://corp.arising.com.au
** https://prop.arising.com.au
* various web-services
** https://padme.arising.com.au
** https://padme.arising.com.au:3004
* gitblit
* nexus
|}
|
* Python 7
* mariadb
* apache httpd
* nginx
* gitblit
* nexus
|-
| Nov 2018 - June 2023 || HPC<br/>Security Specialist Engineer
|
{|
| [[image:Security-icon.png|200px]]
|
| Security Specialist HPC
|}
| various languages and technology.
|+
|+
| 2020 - 2022 || architect<br/>security engineer || Developing '''litsds''' Intrusion Detection Systems.
| Nov 2018 - Mar 2019 || Consultant
|+
|
| Mar-21  || Security engineer<br/>Build from source || developed node-js read/write repository server and mirror for Debian / Ubuntu branches of Linux. Server supports renaming-releases (/<os>/dist/<release>, generating new release, metadata parsers are provided for: .deb, .dsc. Release, Sources, Packages file for metadata analysis. (TBD: Index files to be generated from database on HTTP GET. apt-ftparchive is currently used to regenerate Release files but will be replaced via metadata processing when finalised.)<br>Integrating Build from Source scripts to use the local read/write repository server.
  {|
|+
  | [[image:security-consultant.png|200px]]
| Nov 21 || Architect || developed architecture for environmental monitoring using modbus and IP. Solutions: node-red flows and mqtt server - modernising modbus to IoT like provisions.
  | HPC (High Performance Computing), proving security posture and designing Software Security enforcement tools.  
|+
  |}
| Oct 21 || Architect || designed list processing server to scan security logs and maintain black and white lists that are uploaded by my edge router to block attackers. listsd is written in node-js, and is distributed across various servers and can scan logs such as /var/log/authn.log, /var/log/fail2ban etc to identify attacker IP addresses and maintain lists. mqtt is used to keep white-list and black lists in lock-step asynchronously in each listsd server. The router periodically obtains list deltas or full list via the listsd HTTP server (from any node).
|  
|+
* various
| Sep 21 || developer || implemented mqttd: a resiliant mqtt service running on Linux
|-
|+
| Mar 2018 - Nov 2018 || Architect / Developer
| Apr 2021 - May 2021 || Security Engineer Arising Technology Systems || [[image:pcap-wireshark.png|250px|left]] [[image:security-cam.png|150px|right]] Evaluated and installed a roll-your-own IP security camera system using a COTS IP camera. I secured the camera network via my edge router [[image:Intel-NIC.png|200px|right]]
|
connected to Reolink RLC-510/410 IP cameras via a PoE switch and fitted with a [https://shinobi.video/ Shinobi] Open Source (node.js) NVR deployed on an Intel NUC. Shinobi performs motion detection and recording.
  {|
Security Analysis was performed with Mikrotik router '''pcap''' capture and Wireshark for packet inspection. The goal was to detect and then prevent intrusion  from the www into the camera systems and network.  I have Shinobi, a node.js a software Network Video Recorder running on a dedicated Intel NUC which is also supervised by the watchdog server, along with the security cameras and their PoE network switch. (The next project could be solar panels to power all the IT equipment.)
  | [[image:ir-gis-logo.png|200px]]
|+
  | [[image:mapworld.png|200px]]  
| Feb 2021 - Mar 201 || systems engineer / developer || [[image:watchdog.png|right|150px]] Developed a watchdog server based on a raspberry pi SBC that is used to supervise all my company networking and critical server infrastructure. Equipment is recycled when the equipment cannot be probed. Probes include the network cloud router, network switches, security camera systems, NAS, NTP servers, VTC server, web-servers and other critical infrastructure, including access to DNS. Network equipment is recycled when network connectivity fails. The watchdog server manages the power on 240 V equipment, and reset lines on low power equipment. Equipment was designed with electrical and optical isolation and the relays fail-safe to equipment-on, and resets off. The watchdog server also employs a hardware watchdog timer to ensure the server keeps functioning correctly. This project came about because it became problematic to ring my wife to rectify remote access from airports etc as the amount of critical equipment kept increasing in my home office.
  | Proto-typed http://ir-gis.com/mediawiki/index.php/MapWorld a 3D GIS VR environment.
|+
  |}
| Feb 2021 || Researcher || [[image:Lora-inv.png|right|250px]] Investigated Lora and LoraWAN.
|
|+
* Java
| Nov 97 to present || Managing Director Arising Technology Systems Pty Limited ACN 079 817 342 || Information Technology Consultancy. (Enterprise Application Development, C++, Forte, C#, Perl and Java.) GIS development, antenna simulation and firmware design.
* activemq
|+
* NASA WorldWind
| Apr 2020 || Systems admin || [[image:Intel-NIC.png|200px|right]] Deployed a self-hosted VTC server (based on jitsi). This was used by my team during covid-19 remote access for correspondence with researchers in the US, instead of using insecure Zoom. This server is fully encrypted, voice and video.
|-
|+
| 2018 || Systems engineer  
| Nov 2018 - present || Defence: High Performance Computer<br/>Security Specialist Engineer || HPC Perl, C++, scripting and all sorts of stuff to implements gaols and chroot type compartmentalisation: Redhat Linux.
|  
|+
  {|
| Nov 2018 - Mar 2019 || Consultant ||  High Performance Computing (HPC), investigating and proving security posture and designing Software Security enforcement tools.
  | [[file:neo6-gps.png|200px]]  
|+
  | [[file:crony.jpg|200px]]  
| Mar 2018 - Nov 2018 || Architect / Developer || [[image:mapworld.png|right|150px]] Proto-typed http://ir-gis.com/mediawiki/index.php/MapWorld a 3D GIS VR environment.
  | Developed a tier-0 GPS stimulated NTP server using '''chrony''' and GPS derived '''1PPS''' and raspberry pi SBC that are also feeding flightaware data. I did this because I want more accurate time to improve the precision of multilateration for my own experiments, and for my mobile piaware. The network time from these 1PPS receivers is more accurate than the local university ntp pool at ANU. The only improvement I could realise is to use dedicated hardware that has hardware timestamps in the Network Interface Controller chip - which would further assist the NTP algorithms with correction of network propagation delay and jitter.
|+
  |}
| 2018 || systems engineer || [[file:crony.jpg|left|150px]] [[file:neo6-gps.png|right|150px]] Developed an NTP server using '''chrony''' and GPS derived '''1PPS''' and raspberry pi SBC that are also feeding flightaware data. I did this because I want more accurate time to improve the precision of multilateration for my own experiments, and for my mobile piaware. The network time from these 1PPS receivers is more accurate than the local university ntp pool at ANU. The only improvement I could realise is to use dedicated hardware that has hardware timestamps in the Network Interface Controller chip - which would further assist the NTP algorithms with correction of network propagation delay and jitter.
|
|+
* raspberry pi
| 2016 || System Engineer || Deployed a few piaware transceivers for contribution to aircraft multilateration. Raspberry Pi and UHF antenna and Software Defined Radio installation. Oh - one installation also contains web-cam snap-shot and labelling (all done via bash-scripting and linux commands) http://www.flyoz.com.au/n4rc, note the weather overlay - I did that too. (Sorry about the cob-webs reflecting in the IR; the flying school instructor always somehow forget to clean the camera lenses, so I have to fly up to do maintenance - lol). That is a link to a test page that nobody is supposed to look at - I must remove the extra image links - I deleted the delivery of high res images because their new website FTP server was too slow and ruining the upload timings resulting in delayed-time stamps on the images. These images are fed into OzRunways and AvPlan Electronic Flight Book systems for other pilots consumption (hence the advertising).
* GPS module
|+
* gpsd
| 2016 || Developer || Fixed faults in SDR software for piAware. piAware C code.
* chrony
|+
|-
| Apr 2015 – present || Chief Technology Officer, founding director, N4RC Pty Ltd || Hardware and Software ideas shop.
| Aug 2017 - Dec 2017 ||  Hardware Communications Architect Consultant
|+
|
| 2015 || Developer || [[file:SELCAL.png|150px|right]]Developed fixed-point DSP SELCAL encode and decode logic for pic DSP. Aviation and Amateur Radio
  {|
|+
  | [[image:thales-logo.png|200px]]
| 2014 || RF Engineer || [[file:IC-7000-if.png|right|350px]] Designed the HF transceiver installation in my aircraft: developed the audio interface circuitry, which included the impedance matching for the microphone input, and its frequency tailoring to eliminate the “boxy” noise caused by the aircraft engine, and designed the audio output impedance matching all with passive components to avoid failure modes.
  | Prime contractor deployed at Thales Underwater Systems - Ryde. Architect for the MHC communications system refit. Looked at IP message bus for all connected equipment, including the entertainment systems.
  |}
|
* networking
* IP radios
* satellite
* entertainment equipment
* security systems
* under-water cameras
 
|-
| 2015 - June 2017 || Senior Security Developer
|
{|
| [[image:abac-logo.png|200px]]
| KERMIT Attribute Based Access Control and Identity system
* authentication via LDAP/Directory Services
* identity verification
* fine-grained attribute and role-based access control enforcement
|}
|
* LDAP
* Directory Services
* JPA
* Java
* activemq
* Oracle SQL
* SAML
* xml
* HTTP/S
* HTML
* css
|-
| 2016 || System Engineer  
|
{|
| [[image:piaware.png|200px]]
|
:Deployed a few piaware transceivers for contribution to aircraft multilateration. Raspberry Pi and UHF antenna and Software Defined Radio dongles.  
: Deployed web-cam and web-server for runway cameras http://flyoz.ddns.net:8100. These images are fed into OzRunways and AvPlan Electronic Flight Book systems for other pilots consumption (hence the advertising).
* http://ycwr.arising.com.au
* http://wcac.arising.com.au
* http://yscb.arising.com.au
* http://flyoz.ddns.net:8100
|}
|
* piaware
* C++
* python
* java
* lighthttpd
|-
| 2016 || Developer  
|
{|
| [[image:flight-aware-logo.png|200px]]
| Fixed faults in SDR software for piAware. piAware C code.
|}
|
* C/C++
 
|-
| Apr 2015 – present ||Chief Technology Officer, founding director, N4RC Pty Ltd  
|
{|
| [[image:n4rc-logo.png|200px]]
| Hardware and Software ideas shop.
|}
|
various such as:
* C++
* java
* Python
* Perl
* rust
* go
* node-js
* HTML
* Css
|-
| 2015 || Developer  
|
  {|
  | [[file:SELCAL.png|200px]]
  | Developed fixed-point DSP SELCAL encode and decode logic for pic DSP.
  |}
|
* C++
* pic DSP
* Aviation
* Amateur radio
|-
| 2014 || RF Engineer  
|
  {|
  | [[file:IC-7000-if.png|200px]]  
  | Designed the HF transceiver installation in my aircraft: developed the audio interface circuitry, which included the impedance matching for the microphone input, and its frequency tailoring to eliminate the “boxy” noise caused by the aircraft engine, and designed the audio output impedance matching all with passive components to avoid failure modes.
Designed the placement of the antenna and antenna-tuner and the routing of all cables, and the transceiver grounding to minimize interference by and to/with the aircraft avionics. I even designed the antenna shackle mounting arrangement and the stringer-doubler plate with a strain relief rivet to avoid aircraft skin cracking around the feed-through insulator. Radio communications and electronics.
Designed the placement of the antenna and antenna-tuner and the routing of all cables, and the transceiver grounding to minimize interference by and to/with the aircraft avionics. I even designed the antenna shackle mounting arrangement and the stringer-doubler plate with a strain relief rivet to avoid aircraft skin cracking around the feed-through insulator. Radio communications and electronics.
|+
  |}
|
* electronics
* rf design
* amateur radio
* aircraft
|-
| Apr 2011 – June 2015 || Senior Security Engineer
|
{|
| [[image:Security-icon.png|200px]]
| security identity and decision access control systems
* Jabber,
* activemq,
* oracle SQL,
* JPA,
* identity management,
* extensible meta-data
* extensible Java bitsets
* Access Control Decision engine
* embedded API library.
|}
|
various such as:
* C++
* java
* JPA
* SQL
* SAML
* XML
* HTML
* Css
|-
| 2011 || Engineer || Designer of Seven-of-nine, a Covert Passive Collector for aircraft multi-lateralisation position reporting. (This was designed before the mandate for mode-ES - aircraft extended squitters and before I adopted flightaware.) Hardware UHF Analogue to Digital (direct) receiver and associated digital processing. No local oscillators – to keep it covert.
| 2011 || Engineer || Designer of Seven-of-nine, a Covert Passive Collector for aircraft multi-lateralisation position reporting. (This was designed before the mandate for mode-ES - aircraft extended squitters and before I adopted flightaware.) Hardware UHF Analogue to Digital (direct) receiver and associated digital processing. No local oscillators – to keep it covert.
|
* electronics
* r.f. engineering
* microcontroller
|-
| 2011 || Architect/Senior Developer
|
  {|
  | [[image:khalman-filter.png|200px]]
  |  Developed maritime trackers in Java (after having developed Aviation trackers to cope with 20 seconds of jitter using Kalman filters).
|}
|
* Khalman filters
* C++
* Java
* mathmatica
|+
|+
| 2011 - ongoing || Software Architect || [[file:ir-gis-mapview.png|right|150px]] Designed and developed IR-GIS &reg; MapView for displaying vehicle positions, and IR-GIS &reg; Historical Pullback Server for recording position reports and attributed text in real-time for historical recall and display in MapView. All developed in Java (highly concurrent and performant).
| 2010 - ongoing || Software Architect  
|+
|
| Nov 2009 – 2010 || Product Owner|| Product Owner (Business Analyst and Customer Representative) for a team of 5 using Agile Scrum development. Defence.
  {|
|+
  | [[image:ir-gis-logo.png|200px]]
| 2011 || Architect/Senior Developer || Developed maritime trackers in Java (after having developed Aviation trackers to cope with 20 seconds of jitter using Kalman filters).
  | [[image:ir-gis.jpg|200px]]
|+
  | [[image:ir-gis-mapview.png|200px]]  
| Nov 2006 - Jul 2017 || Senior Developer for Production Systems Defence || Signal processing (C++), Protocol extraction (C++), Estimation and Correlation (Java), Regression Test-bed development (Java, Ant, Junt, Sql-unit, Cobertura, eclipse RCP and Cruise Control), World Projections (C++). GIS (ESRI), Google KML, and then http://ir-gis. Air Traffic Network decoding of position reports and telex, multi-headed radar fusion and dynamic earth model adjustments.
  | Designed and developed [https://ir-gis.com IR-GIS] &reg; [https://ir-gis.com/ir-gis/MapView MapView] for displaying vehicle positions, and IR-GIS &reg; Historical Pullback Server for recording position reports and attributed text in real-time for historical recall and display in MapView. All developed in Java (highly concurrent and performant)
|+
* https://ir-gis.com
| 2013 - 2017 || Senior Security Developer || Attribute Based Access Control systems Java.
* https://ir-gis.com/ir-gis/MapView
|+
* https://ir-gis.com/ir-gis/HPS
| 2010 || Senior Developer || Regression Test Bed design and implementation (Java.)
  |}
|+
|
| 2009 || Senior Developer || Developed Kalman filters for tracking aircraft with up to 20 seconds of jitter (Java real-time processing).
* java eclipse RCP
|+
* tycho
| Oct 2005 to Nov 2006 || Support specialist || metadata (SQL) and application dev. (C)
* git
|+
* leveraging from udig
| Nov 2002 to Oct 2005 || Senior Developer/Architect || Centrelink, Canberra. JavaScript, Forte, DHTLM, XSLT, Java, Enterprise web applications.
|-
|+
| 2010 || Senior Developer
| Nov 2001 - Nov 2002 || Senior Developer || DFAT, Forte 4GL (3.0N.9) migration from Unix to Windows 2000/NT and some C++ support.
|
|+
  {|
| Mar 2001 – Nov 2001 || Forte Mentor and Senior Developer || Framework Architect, Performance Analyst - Technology Partners Group.Forte Web Enterprise, Forte 4GL/UDS, XML, DOM, Forte/UDS, some html and Java script.
  | [[image:testbed-logo.png]]
|+
  | Regression Test Bed design and implementation
| Jan 2000 – Mar 2000 || Architect and Senior Developer|| for Thelma, a health-based Java E-commerce project deployed at ICS global (Sydney), whilst consulting to Technology Partners Group, Newcastle. Java B2B E-commerce development with JRun application server, Oracle JBuilder and Oracle 8i.
  |}
|+
|
| Nov 2000 - Dec 2000 || Performance Consultant || CSC Australia Melbourne E-tag tollway project. Forte 4GL middleware on a Sun Cluster (using Oracle 8i)
* java
|+
|-
| May 1998 – Oct 2000 || Senior Developer and OOD mentor || deployed at DFAT by BHP-IT. Rational Rose UML/RUP, Forte 4GL middleware, C++, C and scripting languages.
| Nov 2009 – 2010 || Product Owner
|+
|
| Sep 1997 – Mar 1998 || Senior Developer/Team Leader || Network Protocol and Framework Architect, Air Data Technologies. Embedded Radio Network for remote power metering.
  {|
|+
  | [[image:scrum.png|200px]]
| Sep 1997 – 1998 || Embedded Communication System designer || developed portable communication protocols for support over MOBITEX and TETRA radio protocols, Air Data Technologies. Embedded processors and radio networking.
  | Product Owner (Business Analyst and Customer Representative) for a team of 5 using Agile Scrum development. Defence.
|+
  |}
| 1997 || Systems Engineer/RF Engineer || [[file:mhc.png|150px|right]] Contributed to a small part of the design of Anzac phased-array radar system (while at CEA) by suggesting that mixed-polarisation was required, because circularly polarized signals are reflected back at the opposite polarisation due to the reflection boundary.
|
* SCRUM
|-
| 2009 || Senior Developer  
|
  {|
  | [[image:khalman-filter.png|200px]]
  | Developed Kalman filters for tracking aircraft with up to 20 seconds of jitter (Java real-time processing).
|}
|
bakeoff between:
* C++
* Java
|-
| Nov 2006 - Jul 2009 || Senior Developer for Production Systems Defence
|
  {|
  | [[image:esri-logo.png|200px]]
  | Vanguard Signal processing (C++), Protocol extraction (C++), Estimation and Correlation (Java), Regression Test-bed development (Java, Ant, Junt, Sql-unit, Cobertura, eclipse RCP and Cruise Control), World Projections (C++). GIS (ESRI), Google KML, and then http://ir-gis. Air Traffic Network decoding of position reports and telex, multi-headed radar fusion and dynamic earth model adjustments.
  |}
|
* C++
* Java
* Java eclipse RCP
* tycho
* git
* SQL
* JavaScript
* GIS
* messaging
* activeMQ
|-
| Oct 2005 to Nov 2006 || Support specialist  
|
  {|
  | [[image:cyclone-logo.png]]
  | metadata (SQL) and application dev. (C GUI)
|}
|
* C/C++ GUI
* SQL
|-
| Nov 2002 to Oct 2005 || Senior Developer/Architect  
|
{|
| [[image:workflow-manager.png|200px]]
|  Workflow Manager Centrelink, Canberra Enterprise web applications interfaced with M204 Transaction processor.
|}
|
* Model 204 TP
* HTLM
* JavaScript
* XSLT
* XML
* UML Architect
|-
| Nov 2001 - Nov 2002 || Senior Developer  
|
  {|
  | [[image:forte-logo.png|200px]]
  | DFAT, Forte 4GL (3.0N.9) migration from Unix to Windows 2000/NT and some C++ support.
  |}
|
* forte
* C++
|-
| Mar 2001 – Nov 2001 || Forte Mentor and Senior Developer  
|
  {|
  | [[image:forte-logo.png|200px]]
  | Framework Architect, Performance Analyst - Technology Partners Group.
  |}
|
* Forte Web Enterprise
* Forte 4GL/UDS
* XML,  
* DOM,  
* Forte/UDS,  
* HTML
* JavaScript
|-
| Jan 2000 – Mar 2000 || Architect and Senior Developer
|
  {|
  | [[image:java-logo.png|200px]]
  | for Thelma, a health-based Java E-commerce project deployed at ICS global (Sydney), whilst consulting to Technology Partners Group, Newcastle.  
  |}
|
* Java B2B E-commerce development
* JRun application server,  
* JSP
* Oracle JBuilder  
* Oracle 8i.
|-
| Nov 2000 - Dec 2000 || Performance Consultant  
|
  {|
  | [[image:forte-logo.png|200px]]
  | CSC Australia Melbourne E-tag tollway project.
  |}
|
* Forte 4GL middleware
* Sun Cluster  
* Oracle 8i database
|-
| May 1998 – Oct 2000 || Senior Developer and OOD mentor  
|
  {|
  | [[image:forte-logo.png|200px]]
  | deployed at DFAT by BHP-IT on ADCNET ER3 release.  
  |}
|
* Rational Rose UML/RUP,  
* Forte 4GL middleware,  
* C++,  
* C  
* scripting languages.
|-
| Sep 1997 – Mar 1998 || Senior Developer/Team Leader  
|
  {|
  | [[image:radio-network.png|200px]]
  | Network Protocol and Framework Architect, Air Data Technologies. Embedded Radio Network for remote power metering.
  |}
|
* rf knowledge
* C++
|-
| Nov 1997 to present || Managing Director Arising Technology Systems Pty Limited ACN 079 817 342
|
{|
  | [[image:Arising-logo.png|800px]]
  |-
  | Information Technology Consultancy.<br/>Enterprise Application Development.<br/>Management
  |}
|
* C++,
* Forte,
* C#,
* Perl
* Java
* node-js
* Python
* rust
* GIS development,
* antenna simulation
* compiler writing
* firmware design.
|-
| 1997 || Systems Engineer/RF Engineer  
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[image:anzac-antenna.png|200px]]
  | [[file:anzac-frigate.png|200px]]  
  | Contributed to a small part of the design of Anzac phased-array radar system (while at CEA) by suggesting that mixed-polarisation was required, because circularly polarized signals are reflected back at the opposite polarisation due to the reflection boundary.
Antenna theory
Antenna theory
  |}
|
* r.f. engineering
* electronics
|-
| 1996 – 1997 || Amateur Radio Hobbyist
|
  {|
  | [[image:wia-logo.png|200px]]
  | Numerous HF antenna designs and installations that have been published and in use world-wide Amateur Radio.
* https://wiki.arising.com.au/wiki/Category:Ralph_Holland:Publications
  |}
|
* r.f. engineering
* electronics
* antenna simulation with NEC2D<ref>NEC2 http://www.nec2.org/<br/>http://www.nec2.org/other/nec2prt1.pdf<br/>http://www.radio-bip.qc.ca/NEC2/nec2prt2.pdf<br/>http://www.nec2.org/other/nec2prt3.pdf</ref> and NEC4<ref>NEC4 https://vdocument.in/nec4-users-manual.html</ref><ref>NEC5 https://ipo.llnl.gov/sites/default/files/2020-07/NEC5%20Validation%20Manual%20092419.pdf</ref>.
|-
| Oct 1995 – Sep 1997 || Senior Systems Engineer
|
  {|
  | [[image:cea-logo.png|200px]]  | [[image:mhc-antenna.png|200px]]
  | [[file:mhc.png|200px]]
  | CEA Technologies. Mine Hunter communication’s system (hardware).
  |}
|
* electronics
* R.F.
* systems engineering
|-
| 1995 - 1997 || Senior Systems Engineer
|
  {|
  | [[image:cea-logo.png|200px]]  | |[[image:Radio-network.png|200px]]
  | Designed and built axial mode helical antennas for NVIS. (Research project at CEA Technologies.)
  |}
|
* Amateur Radio
* R.F. Antenna engineering
* vector network analysis
|-
| 1997 || Amateur Radio Hobbyist
|
  {|
  | [[image:wia-logo.png|200px]]
  | [[file:balun.png|150px]]
  | Built and designed common-mode rejection baluns and filters for LF through to HF.
  |}
|
* Amateur Radio
* r.f. engineering
|-
| 1996 || Sys Eng
|
  {|
  | [[image:flpa.png|200px]]
  | Developed FPLA generated RFDS SELCAL.
  |}
|
* Electronics.
|-
| Oct 1995 – Sep 1997 || System Engineer (rf)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[file:mhc.png|200px]]
  | Proposed the broad-band RX antenna design for the Mine Hunter.
  |}
|
* r.f engineering
|-
| 1996  || System Engineer (rf)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[file:mhc.png|200px]]
  | Proposed the broad-band VHF-UHF TX antenna design for the Mine hunter.
  |}
|
* r.f. engineering
|-
| 1996 || System Engineer (rf)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[file:mhc.png|200px]]
  | Proposed the omni-directional SATCOM antenna design for the Minehunter.
  |}
|
* r.f. engineering
|-
| 1996 || System Engineer (rf)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[file:mhc.png|200px]]
  | Contributed to the design of the hi-dynamic range common-mode-rejection differential amplifiers for the Mine Hunter broad-band receive antenna.
  |}
|
* r.f. engineering
|-
| Jan 1996 || System Engineer (software)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[image:dsp-logo.png|200px]]
  | Debugged the firmware for one of the CEA Technology Software Defined radios (it took me 10 minutes to read the instruction set and 15 minutes to fix it) – the engineer trying to get this to work was causing a floating-point overflow which was causing the DSP to reset and the I/Q audio recovery to have clicks (each time the processor reset).
|}
|
* DSP assembly language
|-
| Nov 1996 || Project Manager
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[image:compucat-logo.png|200px]]
  | Integration of Compucat Maritime Message Switch into the Mine Hunter Communication’s system
  |}
|
* systems engineering
* project management
|-
| 1996 || Amateur Radio Hobbyist
|
  {|
  | [[image:Wia-logo.png|200px]]
  | [[file:sailor-atu-mods.png]]
  | Sailor ATU 1500 modifications, Amateur Radio magazine, 1996.
* https://wiki.arising.com.au/wiki/Sailor_ATU_1500_modifications
  |}
|
* r.f. engineering
|-
| 1995 || Amateur Radio Hobbyist
|
{|
| [[image:wia-logo.png|200px]]
| [[file:ts440-atu-mod.png|200px]]
| ATU Modification for the Kenwood TS440-S/AT, Amateur Radio magazine, November 1995.
* https://wiki.arising.com.au/wiki/Modification_for_the_Kenwood_TS440-S/AT
|}
|
* amateur radio
* r.f. engineering
* electronics
|-
| Nov 1995 – Sep 2007 || Systems Engineer
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[image:cabling.png|200px]]
  | Developed code that performed cable sizing and least-path placement for the Mine Hunter power and signal buses.
  |}
|
* systems engineering
* electronics
|+
|+
| 1996 – 1997 || Amateur Radio Hobbyist || Numerous HF antenna designs and installations that have been published and in use world-wide Amateur Radio.
| Nov 1995 Sep 2007 || Systems Engineer
|
  {|
  | [[image:cea-logo.png|200px]]
  | Selected components for the design of the Mine Hunter telephone hybrid circuit for land-line to ships coms connection. Mine Hunter communication bus telephone interface. CEA Technologies
|}
|
* electronics
* systems engineering
|-
| Nov 1995 – Sep 1997 || System Engineer (rf)
|
  {|
  | [[image:cea-logo.png|200px]]
  | [[image:Radio-network.png]]
  | Simulated the HF antenna on the Mine Hunter for near-field verification that common-mode choke placements were required on Mine Hunter communication bus and wiring.
  |}
|
* Antenna Simulation (Java and FORTRAN)
* Mine Hunter Systems Engineering.
|-
| Nov 1994 – Oct 1995 || Flix Group Manager, Designer and Developer
|
  {|
  | [[image:Compucat-logo.png|200px]] || Proprietary 5GL database project
  |}
|
* Borland Pascal
* Borland C++
|-
| Nov 1993 - 1994 || Software Architect /  Project Manager
|
  {|
  | [[image:Compucat-logo.png|200px]] || Developed the replacement (portable) Compucat Maritime Message Switch, thus familiar with defence messaging
  |}
|
* C++ et al.
* ACP-127,
* Link-11, and
* Link-16 etc.
|-
| 1994 || Architect
|
  {|
  | [[image:Compucat-logo.png|200px]] || Proprietary Exception replacement mechanism (C++). Architect proprietary memory allocation routines (Pascal) and Memory allocation for microprocessors and IBM/PCs (C++)  Compucat Pt Ltd.  
  |}
|
* C++
* Pascal
|+
|+
| Oct 1995 – Sep 1997 || Senior Systems Engineer || [[file:mhc.png|right|150px]] CEA Technologies. Mine Hunter communication’s system (hardware).
| Nov 1993 – Nov 1994 || Project Manager  
|+
|  
| 1995 - 1997 || Amateur Radio Hobbyist || Designed and built axial mode helical antennas for NVIS. (Research project at CEA Technologies.) Amateur Radio.
  {|
|+
  | [[image:Compucat-logo.png|200px]] ||
| 1997 || Amateur Radio Hobbyist || [[file:balun.png|150px|right]] Built and designed common-mode rejection baluns and filters for LF through to HF. Amateur Radio
  |  Compucat Pty Limited. Protocol, Storage and Interface Architect. Compucat’s first C++ and Object Oriented Development. Also first project certified under AS3901.  
|+
  |}
| 1996 || Sys Eng || Developed FPLA generated RFDS SELCAL. Electronics.
|
|+
* C++
| 1996 || System Engineer (rf) || Proposed the broad-band RX antenna design for the Mine Hunter.
* Object Oriented
|+
* AS3901 lead/project
| 1996 || System Engineer (rf) || Proposed the broad-band VHF-UHF TX antenna design for the Mine hunter.
* Solaris
|+
* Windows
| 1996 || System Engineer (rf) || Proposed the omni-directional SATCOM antenna design for the Minehunter.
|-
|+
| Aug 1993 – Nov 1993 || Research Engineer / Senior Analyst Programmer  
| 1996 || System Engineer (rf) || Contributed to the design of the hi-dynamic range common-mode-rejection differential amplifiers for the Mine Hunter broad-band receive antenna.
|
|+
  {|
| Jan 1996 || System Engineer (software) || Debugged the firmware for one of the CEA Technology Software Defined radios (it took me 10 minutes to read the instruction set and 15 minutes to fix it) the engineer trying to get this to work was causing a floating-point overflow which was causing the DSP to reset and the I/Q audio recovery to have clicks (each time the processor reset). DSP assembly language
  | [[image:Compucat-logo.png|200px]]
|+
  | Developed Fixed and Floating point to integer processor libraries and Z-buffering graphics rendering. Fleetwork trainer kinematics. <br/>Fleetwork trainer lead engineer.  
| Nov 1996 || Project Manager || Integration of Compucat Maritime Message Switch into the Mine Hunter Communication’s system
  |}
|+
|
| 1996 || Amateur Radio Hobbyist || [[file:sailor-atu-mods.png|right|150px]] Sailor ATU 1500 modifications, Amateur Radio magazine, 1996.
* Pascal
|+
* ASM
| 1995 || Amateur Radio Hobbyist || [[file:ts440-atu-mod.png|right|150px]] ATU Modification for the Kenwood TS440-S/AT, Amateur Radio magazine, November 1995.
|-
|+
| 1993 || Architect  
| Nov 1995 – Sep 2007 || Systems Engineer || Developed code that performed cable sizing and least-path placement for the Mine Hunter power and signal buses.
|
|+
  {|
| Nov 1995 – Sep 2007 || Systems Engineer || Sourced components and designed the Mine Hunter telephone hybrid circuit for land-line to ships coms connection. Mine Hunter communication bus telephone interface. CEA Technologies
  | [[image:Compucat-logo.png|200px]]  
|+
  | Event-driven Multitasking environment for Borland Pascal DOS applications - used as a basis for Fleet Work Trainer program Compucat Pascal/Assembly language  
| Nov 1995 – Sep 1997 || System Engineer (rf) || Simulated the HF antenna on the Mine Hunter for near-field verification that common-mode choke placements were required on Mine Hunter communication bus and wiring. Antenna Simulation (Java and FORTRAN) Mine Hunter Systems Engineering.
  |}
|+
|
| Nov 1994 – Oct 1995 || Flix Group Manager, Designer and Developer || Proprietary 5GL database project (implemented in Pascal).
* Pascal
|+
* ASM
| Nov 1993 - 1994 || Software Architect /  Project Manager || Developed the replacement (portable) Compucat Maritime Message Switch, thus familiar with defence messaging, C++ et al. ACP-127, Link-11 and Link-16 etc.
|+
| 1994 || Architect || Proprietary Exception replacement mechanism (C++). Architect proprietary memory allocation routines (Pascal) and Memory allocation for microprocessors and IBM/PCs (C++)  Compucat Pt Ltd.
|+
| Nov 1993 – Nov 1994 || Project Manager ||  Compucat Pty Limited. Protocol, Storage and Interface Architect. Compucat’s first C++ and Object Oriented Development. Also first project certified under AS3901.
|+
| Oct 1989 – Nov 1993 || Research Engineer / Senior Analyst Programmer || Compucat Pty Limited. C, Pascal, C++ on Windows, Solaris and Unix platforms.
|+
| Aug 1993 – Nov 1993 || Research Engineer / Senior Analyst Programmer || Developed Fixed and Floating point to integer processor libraries and Z-buffering graphics rendering. Compucat Fleetwork Trainer.
|+
| 1993 || Architect || Event-driven Multitasking environment for Borland Pascal DOS applications - used as a basis for Fleet Work Trainer program Compucat
Pascal/Assembly language
|+
| 1993 || Architect || micro-second precision Event Monitor and program performance metering for PC compatibles). Compucat. Pascal and IBM pc Assembly language
|+
| Aug 1993 – Nov 1993 || Project Controller/Team Leader/Architect || Fleetwork Trainer (used by the RAN and NZ Navy), Compucat. Pascal and Proprietary motion engine. Assembly language.
|+
| 1990 – 2000 || Amateur Radio Hobbyist || Implemented various antenna tuning techniques, including modification to military and ships surplace equipment.
Amateur Radio
|+
| 1990 – 1995 || Amateur Radio Hobbyist || [[file:antenna-simulation.png|right|150px]] Simulated antennas and verified them by building; my specialty was compact and elevated HF ground-plane antennas and NVIS. I have several publications in this regard, and one publication in a per-reviewed paper validating NEC-2D (which was reviewed by the NEC-2D author as it turns out). Amateur Radio
|+
| 1991 || Amateur Radio Hobbyist || Designed and developed un-powered Voice Activated switches for transceivers, and transceiver links using transformers and MOSFETs that operated without external power supplies. Amateur Radio
|+
| 1990 || Amateur Radio Hobbyist || Designed and developed compact 160 m HF antennas for mobile use. Amateur Radio
|+
| 1990 || Amateur Radio Hobbyist  || Obtained unrestricted (full call advanced) Amateur Licence VK1BRH. Morse Code and advanced Radio theory.
|+
| Jan 1986 – Oct 1986 || Technical Liaison Officer || deployed at Prime R&D Boston MA, by Prime R&D Australia. Proprietary operating system (PRIMOS). Development languages: FORTRAN, PL1/G, SPL, Assembly language and INFO/BASIC.
|+
| 1986 || Architect || Designed and developed a new Database interpreter for Prime INFORMATION (PMA) which achieved up to 6 times performance improvement. Prime R&D. Prime 32R Assembly Language
|+
| 1984 – Oct 1989 || Senior Software Engineer || Team Leader, Performance Analyst, Prime R&D Australia. Proprietary operating system (PRIMOS) (based on Multix – the precursor of Unix.) Development languages: FORTRAN, PL1/G, SPL, Assembly language and INFO/BASIC. Proprietary INFORMATION 4GL database.
|+
| 1982 || Software Engineer || Developed their BASIC interpreter (C), a PDP-11 emulator (PMA), a Z80 emulator (PMA) - using Prime Assembly Language and
C language.
|+
| 1980 || Architect || Architect of a Semaphore-based operating system for PRIMOS subsequently used for teaching at the NSWIT. FORTRAN IV and PLP
|+
| 1980 – 1984 || Tutor || NSWIT (now University of Technology), Broadway Sydney. Mini Pascal compiler (Pascal), BNF table driven parser (C), Table-driven diss-assembler (PLP), Ada subset compiler (PL1/G), Academic environment tutoring for wide range of subjects including, Mathematics, Assembly languages, Languages and Processors (compiler theory), Network Analysis, Micro-controller laboratory etc.
|+
| 1980 || Teacher || Qualified NSW Science and Mathematics teacher, Department of Education. Physics, Chemistry, Computing.
|+
| 1980 || Amatuer Radio Hobbyist || [[file:high-impedance-buffer.png|150px|right]] Designed and published high-impedance RF buffer amplifiers circuit so I could signal-trace and tune all the oscillators in a HF transceiver that I repaired – without loading the oscillators. Amateur Radio and Electronics
|+
| 1978 || Amateur Radio Hobbyist  || Obtained Amateur Call sign VK2ZZB. Built amplifiers, transmitters and some transceivers. Electronics and Radio theory.
|+
| 1975 || Electronics Hobbyist || Developed V.21 frequency shift-keying 600 baud phone modem, plus V.22 1200 baud tape modem. Electronics and Computing
|+
| 1972 || Electronics Hobbyist || Rewound a 250 volt laboratory variac that had some burnt-out turns on the later half of the winding. Electronics
|+
| 1970 ||  Electronics Hobbyist || Designed switch-mode Triac power-supplies (regulating the primary main-supply side of the transformer). Electronics
|+
| 1970 ||  Amateur Astronomer || Designed and developed a variable frequency inverter drive for synchronous motors used for astronomical telescope tracking. Electronics.
|+
| 1970 || Electronics Hobbyist  || Developed Buck and Boost switch-mode power-supplies before the advent of “jungle” chips. Electronics.
|+
|+
| 1993 || Architect
|
  {|
  | [[image:Compucat-logo.png|200px]] || micro-second precision Event Monitor and program performance metering for PC compatibles). Compucat.
  |}
|
* Pascal
* IBM pc Assembly language
|-
| Aug 1993 – Nov 1993 || Project Controller/Team Leader/Architect
|
  {|
  | [[image:Compucat-logo.png|200px]] || Fleetwork Trainer (used by the RAN and NZ Navy), Compucat.
  |}
|
* Pascal
* Proprietary motion engine.
* Assembly language.
|-
| 1990 – 1995 || Amateur Radio Hobbyist
|
  {|
  | [[image:wia-logo.png|200px]]
  | [[file:antenna-simulation.png|200px]]
  | Simulated antennas and verified them by building; my specialty was compact and elevated HF ground-plane antennas and NVIS. I have several publications in this regard, and one publication in a per-reviewed paper validating NEC-2D (which was reviewed by the NEC-2D author as it turns out).
* https://publications.arising.com.au/pub/Ralph_Holland:_antenna_simulation_publications
* https://wiki.arising.com.au/wiki/Category:Ralph_Holland:Publications
  |}
|
* Amateur Radio
* NEC2D simulation
|-
| 1991 || Amateur Radio Hobbyist || Designed and developed un-powered Voice Activated switches for transceivers, and transceiver links using transformers and MOSFETs that operated without external power supplies. ||
* Amateur Radio
* electronics
* r.f. engineering
|-
| 1990 || Amateur Radio Hobbyist
|
  {|
  | [[image:wia-logo.png|200px]]
  | Designed and developed compact 160 m HF antennas for mobile use. Published in Wia magazine.
  |}
|
* NEC2D Antenna Simulation
* Amateur Radio
* electronics
* r.f. engineering
|-
| 1990 || Amateur Radio Hobbyist 
|
  {|
  | [[image:wia-logo.png|200px]]
  | Obtained unrestricted (full call advanced) Amateur Licence VK1BRH.
* https://wiki.arising.com.au/wiki/Category:Ralph_Holland:Publications
  |}
|
* Morse Code at 10 w.p.m.
* Advanced Radio theory
* electronics
|-
| Jan 1986 – Oct 1986 || Technical Liaison Officer
|
  {|
  | [[image:prime-logo.png|200px]]
  | deployed at Prime R&D Boston MA, by Prime R&D Australia. Proprietary operating system (PRIMOS).
* developed interpreter extensions
* developed Prime Information Releases
* vetted Prime Information IBM Pc releases
* developed a Prime Information debugger
* wrote my Ada compiler master's thesis (with-drawn)
|}
| Development languages:
* FORTRAN,
* PL1/G,
* SPL,
* Assembly language
* INFO/BASIC.
|-
| 1986 || Architect
|
  {|
  | [[image:prime-logo.png|200px]]
  | Designed and developed a new Database interpreter for Prime INFORMATION (PMA) which achieved up to 6 times performance improvement. Prime R&D. Prime 32R Assembly Language
  |}
|
* PMA (Assembly language)
|-
| 1984 – Oct 1989 || Senior Software Engineer
|
  {|
  | [[image:prime-logo.png|200px]]
  | Team Leader, Performance Analyst, Prime R&D Australia. Proprietary operating system (PRIMOS) (based on Multix – the precursor of Unix.)
  |}
|
* FORTRAN,
* PL1/G,
* SPL,
* Assembly language
* INFO/BASIC.
* Prime INFORMATION 4GL database.
|-
| 1982 || Software Engineer
|
  {|
  | [[image:uts.png|200px]]
  | Developed a BASIC interpreter (C), a PDP-11 emulator (PMA), a Z80 emulator (PMA) - using Prime Assembly Language and C language.
  |}
|
* C
* PMA
|-
| 1980 || Architect
|
  {|
  | [[image:uts.png|200px]]
  | Architect of a Semaphore-based operating system for PRIMOS subsequently used for teaching at the NSWIT.
  |}
|
* FORTRAN IV
* PLP
|-
| 1980 – 1984 || Tutor
|
  {|
  | [[image:uts.png|200px]]
  | NSWIT (now University of Technology), Broadway Sydney.
* Mini Pascal compiler (Pascal),
* BNF table driven parser (C),
* Table-driven diss-assembler (PLP),
* developed an Ada subset compiler in PL1/G - for Primos,
* developed Primos hardware semaphore emulator - used for student course work
* Helped port the Portable C compiler to Primos
* Academic environment tutoring for wide range of subjects.
|}
|
* Tutor - education
* Mathematics,
* Assembly languages,
* COBOL
* PL1-G
* C
* FORTRAN IV
* FORTRAN 77
* Lisp
* Ada
* Pascal
* RPG-II
* Languages and Processors (compiler theory),
* Network Analysis,
* Micro-controller laboratory etc.
|-
| 1980 || Teacher
|
  {|
  | [[image:depart-edu-nsw-logo.png]]
  | Qualified NSW Science and Mathematics teacher, Department of Education.<br/>(resigned to learn/teach Computing Systems)
  |}
|
* Dip Ed (UNE) 1975 - 1979, Education
* BSc (UNE) 1975 - 1979
**Physics,
** Chemistry
*  Dip Com Sc (UNE) 1979, Computing Science
|-
| 1980 || Amateur Radio Hobbyist
|
  {|
  | [[image:wia-logo.png|200px]]
  | [[file:high-impedance-buffer.png|200px]]
  | Designed and published high-impedance RF buffer amplifier  circuit so I could signal-trace and tune all the oscillators in a HF transceiver that I repaired – without loading the oscillators.
* https://wiki.arising.com.au/wiki/High_Impedance_Buffer_and_Broadband_Amplifier_for_Digital_Freq._Meters
  |}
|
* electronics
* RadioFrequency design
* Amateur Radio
|-
| 1978 || Amateur Radio Hobbyist 
|
  {|
  | [[image:Wia-logo.png|200px]]
  | Obtained Amateur Call sign VK2ZZB. Built amplifiers, transmitters and some transceivers.
* https://wiki.arising.com.au/wiki/Category:Ralph_Holland:Publications
  |}
|
* electronics
* radio theory
|-
| 1975 || Electronics Hobbyist || Developed V.21 frequency shift-keying 600 baud phone modem, plus V.22 1200 baud tape modem (because I needed one for my computer work).
|
* electronics
* computing
|-
| 1972 || Electronics Hobbyist || Rewound a 250 volt laboratory variac that had some burnt-out turns on the later half of the winding.
|
* electrical fitting
|-
| 1970 ||  Electronics Hobbyist || Designed switch-mode Triac power-supplies (regulating the primary main-supply side of the transformer).
|
* electronic design
|-
| 1970 ||  Amateur Astronomer || Designed and developed a variable frequency inverter drive for synchronous motors used for astronomical telescope tracking.
|
* electronic design
|-
| 1970 || Electronics Hobbyist  || Developed Buck and Boost switch-mode power-supplies before the advent of “jungle” chips.
|
* electronic design
|-
| 1969 || Electronics Hobbyist || Rewound a power drill motor armature – because my father's drill blew-up and he said I can have it if I fixed it, and then he showed me how to fix it (my dad was an electrical turner and fitter by trade). Electro-mechanical.
| 1969 || Electronics Hobbyist || Rewound a power drill motor armature – because my father's drill blew-up and he said I can have it if I fixed it, and then he showed me how to fix it (my dad was an electrical turner and fitter by trade). Electro-mechanical.
|+
|
| 1967 || Electronics Hobbyist || Designed 400 Watt adjustable linear power supply for my father using a large TV transformer and my own-regulator design. Voltage would only boost up by a faction of a volt under a 30 amp load due to the compensation and voltage sense in my regulator design. Electronics,
* electrical fitting
|+
|-
| 1966 || Electronics Hobbyist || Rewinding valve TV mains transformers for power supplies that I designed. Electronics.
| 1967 || Electronics Hobbyist || Designed 400 Watt adjustable linear power supply for my father using a large TV transformer and my own-regulator design. Voltage would only boost up by a faction of a volt under a 30 amp load due to the compensation and voltage sense in my regulator design.  
|+
|
* electronics
|-
| 1966 || Electronics Hobbyist || Rewinding valve TV mains transformers for power supplies that I designed.  
|
* electronics
|-
| 1961 || Hobbyist || Light and Morse Key circuit soldered at home direct to batteries and switches etc and taken to school.  
| 1961 || Hobbyist || Light and Morse Key circuit soldered at home direct to batteries and switches etc and taken to school.  
My father made me a soldering iron and taught me to solder at an early age.
My father made me a soldering iron and taught me to solder at an early age.
|
* soldering
* electronics
|}
|}


Logos are property of respective owners.


=references=
<references/>
[[category:biography]]
[[category:Resume/CV]]
[[category:Resume/CV]]
[[category:User]]
[[category:User]]
[[category:public]]
[[category:public]]
[[category:Ralph Holland:Publications|Development Experience]]
[[category:Ralph Holland:Publications|Development Experience]]

Latest revision as of 20:57, 12 December 2025

This may be printed reasonably well-behaved to PDF with:

  • chromium
  • page size A3
  • landscape mode
  • approximately 17 pages

This page is category:public and viewable ATM.

Note that I like learning and keeping abreast with technology, and hold CTO and CEO positions in a few companies.

credentials

  • BSc (UNE) 1975 - 1979
  • Dip Ed (UNE) 1975 - 1979
  • Dip Com Sc (UNE) 1979
  • MIEEE TO - to 2020
  • MACS (Snr/CP) - to 2020
  • Amateur Radio operator ex VK2ZZB (NSW) since 1975, now VK1BRH (ACT) - advanced class licence since 1990
  • Private pilot aircraft (Jan 2004), with: Command Instrument Rating, NVFR, CSU, retractable, tail-dragger, and twin-engine endorsements.
Period Role Application Technology
Aug 2023 systems administrator
Developed (repeatable) procedures for working on operational/bootable Linux disks to
  • clone to/from:
    • RAW
    • guest VM
disk/images
  • re-partition the images
  • re-factor file systems
  • modify /etc/fstab mount points
  • perform apt update of debian releases via chroot
  • bootstrap
    • install grub for both:
      • MBR legacy
      • EFI
boot from the RAW or VM guest images
  • replace kernel/initramfs
  • convert to/from
    • RAW disk image
    • virtual disk images
for deployment or testing.

These procedures were used to migrate and upgrade a Debian 10 unifi-video NVR to Debian 12, and with a different target partitioning scheme, to permit things like faster Operating System image backups and migration to larger/smaller disks.

The next step will be to use these design notes to develop declarative data/scripting that drives an update platform written in rust, and to port that application to run on any operating system.

Think of this as a glorified gparted that knows exactly how to partition while preserving the function of the OS image, and other file-systems on the updated disk.

  • LVM
  • Linux
  • Kernel
  • file system
  • mounts
  • apt
  • chroot
Aug 2023 network engineer
Designed and developed a web-scripting language and web-scripting engine (using playwright API under the covers) to login to the corporate gateway/router web-server and restore all critical configuration for the network operations. This project was conceived because iiNet has periodically remotely factory reset the gateway to default configuration several times now (presumably when doing firmware updates and usually late at night). Formerly requiring me to manually restore many attributes through the only option, a web-browser interface. The web-scripting software is running as a cron job and it automatically restores the gateway configuration after it detects a factory reset of the gateway/router.
  • JSON used for web-script language
  • playwright API
  • node-js used for the platform
  • chrome browser API
  • HTML knowledge
Jun 2023 security engineer
hosted separate VPN tunnels in a corporate edge-router (firmware) for use by: mobile devices, office devices, and experimental devices. Installed associated IP filter rules to provide DMZ isolation from the corporate network and to restrict access to the www access only for mobile iOs devices. Developed other VPN endpoints that can provide access to the corporate network for corporate equipment and for remote access. I set this up to use for our holiday in Vanuatu - we now permanently run with the mobile device VPN on our devices.
  • Mikrotik Router Os
Apr 2023 software/security engineer
developed a network travel companion/road-warrior dual-channel Wireless Access Point that provides various web-browser configurable router/bridge (10) configurations for connection to motel wired or wireless networks to provide safe www access for mobile equipment while travelling. Written in node-js using systemd-networkd, supplying a web-server hosted on a raspberry pi running standard Debian (not openWrt). This should probably be migrated to rust.
  • debian 11,
  • systemd-networkd,
  • node-js for the web-server
  • raspberry pi
Nov 2022 - Apr 2023 architect
extended the node-js repository mirror with handlers to handle various repositories:
  • Debian apt,
  • node npm,
  • Java mvn,
  • Perl CPAN,
  • R CRAN,
  • Python PyPi,
  • gnu mirrors.
(About to investigate a rust cargo mirror.)
  • Perl,
  • C++
  • node-js,
  • dynamic HTML
  • css.
Sep 22 computer and electronics trainer
I am familiar with a variety of computer and electronics hardware.
We formed https://regional-training.org on 20 Oct 2023 to start passing on our knowledge to the younger generations.
  • electronics
  • computing
  • instruments
  • soldering
  • programming
  • design
  • training
  • remote learning
  • remote collaboration
Oct 22 electronics technician
Repaired my broken Synology NAS.
  • electronics
Nov 22 security engineer
declarative performance monitoring.
  • node-js
  • chart.js
  • dynamic HTML
  • various linux
  • synology OS
Apr 2021 System administrator
backups
Wrote scripts and services to automatically backup data for:
  • all mariadb databases
  • all mediawikis
  • gitblit repositories
  • nexus respositories
  • bash
  • rsync
  • cron
Mar 2021 Security engineer
Build from source
designed and developed node-js read/write repository server and mirror for Debian apt repositories.

Server supports renaming-releases (/<os>/dist/<release>, generating new release, metadata parsers are provided for: .deb, .dsc. Release, Sources, Packages file for metadata analysis. (TBD: Index files to be generated from database on HTTP GET. apt-ftparchive is currently used to regenerate Release files but will be replaced via metadata processing when finalised.)
Integrating Build from Source scripts to use the local read/write repository server.

  • node-js
  • dynamic HTML
  • css
Nov 2021 Architect
developed architecture for environmental monitoring using modbus and IP. Solutions: node-red flows, grafana, influxdb and MQTT server - modernising modbus to IoT like provisions.
  • node-red
  • node-js
  • C++
Oct 21 Architect
designed distributed listsd processing servers to scan various security logs and maintain black and white lists that are uploaded by my corporate edge-router to block attackers. listsd is written in node-js, and is distributed across various servers and can scan logs such as:
  • /var/log/authn.log,
  • /var/log/fail2ban

etc to identify attacker IP addresses and maintain lists.

MQTT is used to keep white-list and black lists in lock-step asynchronously in all distributed listsd servers.

The router periodically obtains list deltas or full lists via the listsd HTTP server (on any server). These data may be obtained as lists, or as script that can then be executed by the router firmware to update it's lists.

  • MQTT
  • node-js
  • scripting
    • cron / bash
    • Mikrotik Router Os
    • Cisco router
    • ipTables
Oct 21 Systems engineering
  • replaced all the SLA batteries in the corporate UPS.
  • designed battery bank and extended the UPS with Extension Battery Module mode to 15 hours of standby
  • electronics
  • system engineering
Sep 2021 developer
implemented mqttd: a resiliant mqtt service running on Linux
  • node-js
  • mqtt broker code
Apr 2021 Security Engineer Arising Technology Systems
Evaluated and installed a roll-your-own IP security camera system using COTS IP camera and OpenSource NVR. I secured the camera network via my edge router filter rules to prevent cameras from accessing the www and phoning home. I used Reolink RLC-510/410 IP cameras connected via a PoE switch and captured with Shinobi - an Open Source (node.js) NVR deployed on an Intel NUC. Shinobi performs motion detection and recording.

Security Analysis was performed with a pcap capture from my edge-router and using Wireshark for packet inspection which informed my filter rules for the camera gaols. The goal was to provide a secure corporate integrated camera security system network that prevents infiltrations.

  • intel NUC
  • nginx
  • Debian 11
  • reolink IP cameras
  • Shinobi
  • node-js
Feb 2021 - Mar 2021 Systems engineer
Developed a watchdog server based on a raspberry pi SBC that is used to supervise all corporate networking and critical server infrastructure. Equipment is recycled when the equipment cannot be probed. Probes cover the network edge-router, network switches, security cameras, NAS, two NTP servers, VTC server, web-servers and other critical infrastructure, including probing access to DNS. Network equipment is recycled when network connectivity fails. The watchdog server manages the power on these equipment, and reset lines on low power equipment. Equipment was designed with electrical and optical isolation and the relays fail-safe to equipment-on, and resets off. The watchdog server also employs a hardware watchdog timer circuit to ensure the watchdog server keeps functioning correctly. This project came about because it became problematic to ring my wife for her to gain access and be instructed to restore services while I was working remotely, like from places such as airports, because the amount of critical equipment keeps increasing in my home office - due to expansion and thanks to covid-19. (It's a self-contained solution rather than using distributed smart-plugs, which could have been incorporated into the design.)
  • raspberry pi gpio
  • relays
  • python
  • bash
  • cron
  • networking
Feb 2021 Researcher
Investigated Lora and LoraWAN.
  • web-search
  • raspbery pi HAT
Apr 2020 Systems admin
I use this for secure VTC with my partners, friends and family instead of using insecure Zoom. This server provides fully encrypted voice and video and interoperates with the Jitsi Meet Apps.

See

developed /@ring web-app that rings in the web-browser when someone else connects to the specified VTC room. People can camp in the /@ring app waiting for a room to ring by using the room name or wild-card name matching. Conveniently a blank room name causes the web-app to ring when any VTC room is connected - thus monitoring the whole VTC server name-space.

  • jisti-meet
    • node-js
    • java
    • jabber
    • web-sockets
    • HTML
    • css
    • HTTPS
    • UDP
  • Debian
  • nginx
  • Intel-NUC
Apr 2019 Systems admin
Migrated off ALL Windows servers, and re-hosted the following services on Debian linux:
  • Python 7
  • mariadb
  • apache httpd
  • nginx
  • gitblit
  • nexus
Nov 2018 - June 2023 HPC
Security Specialist Engineer
Security Specialist HPC
various languages and technology.
Nov 2018 - Mar 2019 Consultant
HPC (High Performance Computing), proving security posture and designing Software Security enforcement tools.
  • various
Mar 2018 - Nov 2018 Architect / Developer
Proto-typed http://ir-gis.com/mediawiki/index.php/MapWorld a 3D GIS VR environment.
  • Java
  • activemq
  • NASA WorldWind
2018 Systems engineer
Developed a tier-0 GPS stimulated NTP server using chrony and GPS derived 1PPS and raspberry pi SBC that are also feeding flightaware data. I did this because I want more accurate time to improve the precision of multilateration for my own experiments, and for my mobile piaware. The network time from these 1PPS receivers is more accurate than the local university ntp pool at ANU. The only improvement I could realise is to use dedicated hardware that has hardware timestamps in the Network Interface Controller chip - which would further assist the NTP algorithms with correction of network propagation delay and jitter.
  • raspberry pi
  • GPS module
  • gpsd
  • chrony
Aug 2017 - Dec 2017 Hardware Communications Architect Consultant
Prime contractor deployed at Thales Underwater Systems - Ryde. Architect for the MHC communications system refit. Looked at IP message bus for all connected equipment, including the entertainment systems.
  • networking
  • IP radios
  • satellite
  • entertainment equipment
  • security systems
  • under-water cameras
2015 - June 2017 Senior Security Developer
KERMIT Attribute Based Access Control and Identity system
  • authentication via LDAP/Directory Services
  • identity verification
  • fine-grained attribute and role-based access control enforcement
  • LDAP
  • Directory Services
  • JPA
  • Java
  • activemq
  • Oracle SQL
  • SAML
  • xml
  • HTTP/S
  • HTML
  • css
2016 System Engineer
Deployed a few piaware transceivers for contribution to aircraft multilateration. Raspberry Pi and UHF antenna and Software Defined Radio dongles.
Deployed web-cam and web-server for runway cameras http://flyoz.ddns.net:8100. These images are fed into OzRunways and AvPlan Electronic Flight Book systems for other pilots consumption (hence the advertising).
  • piaware
  • C++
  • python
  • java
  • lighthttpd
2016 Developer
Fixed faults in SDR software for piAware. piAware C code.
  • C/C++
Apr 2015 – present Chief Technology Officer, founding director, N4RC Pty Ltd
Hardware and Software ideas shop.

various such as:

  • C++
  • java
  • Python
  • Perl
  • rust
  • go
  • node-js
  • HTML
  • Css
2015 Developer
Developed fixed-point DSP SELCAL encode and decode logic for pic DSP.
  • C++
  • pic DSP
  • Aviation
  • Amateur radio
2014 RF Engineer
Designed the HF transceiver installation in my aircraft: developed the audio interface circuitry, which included the impedance matching for the microphone input, and its frequency tailoring to eliminate the “boxy” noise caused by the aircraft engine, and designed the audio output impedance matching all with passive components to avoid failure modes.

Designed the placement of the antenna and antenna-tuner and the routing of all cables, and the transceiver grounding to minimize interference by and to/with the aircraft avionics. I even designed the antenna shackle mounting arrangement and the stringer-doubler plate with a strain relief rivet to avoid aircraft skin cracking around the feed-through insulator. Radio communications and electronics.

  • electronics
  • rf design
  • amateur radio
  • aircraft
Apr 2011 – June 2015 Senior Security Engineer
security identity and decision access control systems
  • Jabber,
  • activemq,
  • oracle SQL,
  • JPA,
  • identity management,
  • extensible meta-data
  • extensible Java bitsets
  • Access Control Decision engine
  • embedded API library.

various such as:

  • C++
  • java
  • JPA
  • SQL
  • SAML
  • XML
  • HTML
  • Css
2011 Engineer Designer of Seven-of-nine, a Covert Passive Collector for aircraft multi-lateralisation position reporting. (This was designed before the mandate for mode-ES - aircraft extended squitters and before I adopted flightaware.) Hardware UHF Analogue to Digital (direct) receiver and associated digital processing. No local oscillators – to keep it covert.
  • electronics
  • r.f. engineering
  • microcontroller
2011 Architect/Senior Developer
Developed maritime trackers in Java (after having developed Aviation trackers to cope with 20 seconds of jitter using Kalman filters).
  • Khalman filters
  • C++
  • Java
  • mathmatica
2010 - ongoing Software Architect
Designed and developed IR-GIS ® MapView for displaying vehicle positions, and IR-GIS ® Historical Pullback Server for recording position reports and attributed text in real-time for historical recall and display in MapView. All developed in Java (highly concurrent and performant)
  • java eclipse RCP
  • tycho
  • git
  • leveraging from udig
2010 Senior Developer
Regression Test Bed design and implementation
  • java
Nov 2009 – 2010 Product Owner
Product Owner (Business Analyst and Customer Representative) for a team of 5 using Agile Scrum development. Defence.
  • SCRUM
2009 Senior Developer
Developed Kalman filters for tracking aircraft with up to 20 seconds of jitter (Java real-time processing).

bakeoff between:

  • C++
  • Java
Nov 2006 - Jul 2009 Senior Developer for Production Systems Defence
Vanguard Signal processing (C++), Protocol extraction (C++), Estimation and Correlation (Java), Regression Test-bed development (Java, Ant, Junt, Sql-unit, Cobertura, eclipse RCP and Cruise Control), World Projections (C++). GIS (ESRI), Google KML, and then http://ir-gis. Air Traffic Network decoding of position reports and telex, multi-headed radar fusion and dynamic earth model adjustments.
  • C++
  • Java
  • Java eclipse RCP
  • tycho
  • git
  • SQL
  • JavaScript
  • GIS
  • messaging
  • activeMQ
Oct 2005 to Nov 2006 Support specialist
metadata (SQL) and application dev. (C GUI)
  • C/C++ GUI
  • SQL
Nov 2002 to Oct 2005 Senior Developer/Architect
Workflow Manager Centrelink, Canberra Enterprise web applications interfaced with M204 Transaction processor.
  • Model 204 TP
  • HTLM
  • JavaScript
  • XSLT
  • XML
  • UML Architect
Nov 2001 - Nov 2002 Senior Developer
DFAT, Forte 4GL (3.0N.9) migration from Unix to Windows 2000/NT and some C++ support.
  • forte
  • C++
Mar 2001 – Nov 2001 Forte Mentor and Senior Developer
Framework Architect, Performance Analyst - Technology Partners Group.
  • Forte Web Enterprise
  • Forte 4GL/UDS
  • XML,
  • DOM,
  • Forte/UDS,
  • HTML
  • JavaScript
Jan 2000 – Mar 2000 Architect and Senior Developer
for Thelma, a health-based Java E-commerce project deployed at ICS global (Sydney), whilst consulting to Technology Partners Group, Newcastle.
  • Java B2B E-commerce development
  • JRun application server,
  • JSP
  • Oracle JBuilder
  • Oracle 8i.
Nov 2000 - Dec 2000 Performance Consultant
CSC Australia Melbourne E-tag tollway project.
  • Forte 4GL middleware
  • Sun Cluster
  • Oracle 8i database
May 1998 – Oct 2000 Senior Developer and OOD mentor
deployed at DFAT by BHP-IT on ADCNET ER3 release.
  • Rational Rose UML/RUP,
  • Forte 4GL middleware,
  • C++,
  • C
  • scripting languages.
Sep 1997 – Mar 1998 Senior Developer/Team Leader
Network Protocol and Framework Architect, Air Data Technologies. Embedded Radio Network for remote power metering.
  • rf knowledge
  • C++
Nov 1997 to present Managing Director Arising Technology Systems Pty Limited ACN 079 817 342
Information Technology Consultancy.
Enterprise Application Development.
Management
  • C++,
  • Forte,
  • C#,
  • Perl
  • Java
  • node-js
  • Python
  • rust
  • GIS development,
  • antenna simulation
  • compiler writing
  • firmware design.
1997 Systems Engineer/RF Engineer
Contributed to a small part of the design of Anzac phased-array radar system (while at CEA) by suggesting that mixed-polarisation was required, because circularly polarized signals are reflected back at the opposite polarisation due to the reflection boundary.

Antenna theory

  • r.f. engineering
  • electronics
1996 – 1997 Amateur Radio Hobbyist
Numerous HF antenna designs and installations that have been published and in use world-wide Amateur Radio.
  • r.f. engineering
  • electronics
  • antenna simulation with NEC2D[1] and NEC4[2][3].
Oct 1995 – Sep 1997 Senior Systems Engineer
| CEA Technologies. Mine Hunter communication’s system (hardware).
  • electronics
  • R.F.
  • systems engineering
1995 - 1997 Senior Systems Engineer
| | Designed and built axial mode helical antennas for NVIS. (Research project at CEA Technologies.)
  • Amateur Radio
  • R.F. Antenna engineering
  • vector network analysis
1997 Amateur Radio Hobbyist
Built and designed common-mode rejection baluns and filters for LF through to HF.
  • Amateur Radio
  • r.f. engineering
1996 Sys Eng
Developed FPLA generated RFDS SELCAL.
  • Electronics.
Oct 1995 – Sep 1997 System Engineer (rf)
Proposed the broad-band RX antenna design for the Mine Hunter.
  • r.f engineering
1996 System Engineer (rf)
Proposed the broad-band VHF-UHF TX antenna design for the Mine hunter.
  • r.f. engineering
1996 System Engineer (rf)
Proposed the omni-directional SATCOM antenna design for the Minehunter.
  • r.f. engineering
1996 System Engineer (rf)
Contributed to the design of the hi-dynamic range common-mode-rejection differential amplifiers for the Mine Hunter broad-band receive antenna.
  • r.f. engineering
Jan 1996 System Engineer (software)
Debugged the firmware for one of the CEA Technology Software Defined radios (it took me 10 minutes to read the instruction set and 15 minutes to fix it) – the engineer trying to get this to work was causing a floating-point overflow which was causing the DSP to reset and the I/Q audio recovery to have clicks (each time the processor reset).
  • DSP assembly language
Nov 1996 Project Manager
Integration of Compucat Maritime Message Switch into the Mine Hunter Communication’s system
  • systems engineering
  • project management
1996 Amateur Radio Hobbyist
Sailor ATU 1500 modifications, Amateur Radio magazine, 1996.
  • r.f. engineering
1995 Amateur Radio Hobbyist
ATU Modification for the Kenwood TS440-S/AT, Amateur Radio magazine, November 1995.
  • amateur radio
  • r.f. engineering
  • electronics
Nov 1995 – Sep 2007 Systems Engineer
Developed code that performed cable sizing and least-path placement for the Mine Hunter power and signal buses.
  • systems engineering
  • electronics
Nov 1995 – Sep 2007 Systems Engineer
Selected components for the design of the Mine Hunter telephone hybrid circuit for land-line to ships coms connection. Mine Hunter communication bus telephone interface. CEA Technologies
  • electronics
  • systems engineering
Nov 1995 – Sep 1997 System Engineer (rf)
Simulated the HF antenna on the Mine Hunter for near-field verification that common-mode choke placements were required on Mine Hunter communication bus and wiring.
  • Antenna Simulation (Java and FORTRAN)
  • Mine Hunter Systems Engineering.
Nov 1994 – Oct 1995 Flix Group Manager, Designer and Developer
Proprietary 5GL database project
  • Borland Pascal
  • Borland C++
Nov 1993 - 1994 Software Architect / Project Manager
Developed the replacement (portable) Compucat Maritime Message Switch, thus familiar with defence messaging
  • C++ et al.
  • ACP-127,
  • Link-11, and
  • Link-16 etc.
1994 Architect
Proprietary Exception replacement mechanism (C++). Architect proprietary memory allocation routines (Pascal) and Memory allocation for microprocessors and IBM/PCs (C++) Compucat Pt Ltd.
  • C++
  • Pascal
Nov 1993 – Nov 1994 Project Manager
Compucat Pty Limited. Protocol, Storage and Interface Architect. Compucat’s first C++ and Object Oriented Development. Also first project certified under AS3901.
  • C++
  • Object Oriented
  • AS3901 lead/project
  • Solaris
  • Windows
Aug 1993 – Nov 1993 Research Engineer / Senior Analyst Programmer
Developed Fixed and Floating point to integer processor libraries and Z-buffering graphics rendering. Fleetwork trainer kinematics.
Fleetwork trainer lead engineer.
  • Pascal
  • ASM
1993 Architect
Event-driven Multitasking environment for Borland Pascal DOS applications - used as a basis for Fleet Work Trainer program Compucat Pascal/Assembly language
  • Pascal
  • ASM
1993 Architect
micro-second precision Event Monitor and program performance metering for PC compatibles). Compucat.
  • Pascal
  • IBM pc Assembly language
Aug 1993 – Nov 1993 Project Controller/Team Leader/Architect
Fleetwork Trainer (used by the RAN and NZ Navy), Compucat.
  • Pascal
  • Proprietary motion engine.
  • Assembly language.
1990 – 1995 Amateur Radio Hobbyist
Simulated antennas and verified them by building; my specialty was compact and elevated HF ground-plane antennas and NVIS. I have several publications in this regard, and one publication in a per-reviewed paper validating NEC-2D (which was reviewed by the NEC-2D author as it turns out).
  • Amateur Radio
  • NEC2D simulation
1991 Amateur Radio Hobbyist Designed and developed un-powered Voice Activated switches for transceivers, and transceiver links using transformers and MOSFETs that operated without external power supplies.
  • Amateur Radio
  • electronics
  • r.f. engineering
1990 Amateur Radio Hobbyist
Designed and developed compact 160 m HF antennas for mobile use. Published in Wia magazine.
  • NEC2D Antenna Simulation
  • Amateur Radio
  • electronics
  • r.f. engineering
1990 Amateur Radio Hobbyist
Obtained unrestricted (full call advanced) Amateur Licence VK1BRH.
  • Morse Code at 10 w.p.m.
  • Advanced Radio theory
  • electronics
Jan 1986 – Oct 1986 Technical Liaison Officer
deployed at Prime R&D Boston MA, by Prime R&D Australia. Proprietary operating system (PRIMOS).
  • developed interpreter extensions
  • developed Prime Information Releases
  • vetted Prime Information IBM Pc releases
  • developed a Prime Information debugger
  • wrote my Ada compiler master's thesis (with-drawn)
Development languages:
  • FORTRAN,
  • PL1/G,
  • SPL,
  • Assembly language
  • INFO/BASIC.
1986 Architect
Designed and developed a new Database interpreter for Prime INFORMATION (PMA) which achieved up to 6 times performance improvement. Prime R&D. Prime 32R Assembly Language
  • PMA (Assembly language)
1984 – Oct 1989 Senior Software Engineer
Team Leader, Performance Analyst, Prime R&D Australia. Proprietary operating system (PRIMOS) (based on Multix – the precursor of Unix.)
  • FORTRAN,
  • PL1/G,
  • SPL,
  • Assembly language
  • INFO/BASIC.
  • Prime INFORMATION 4GL database.
1982 Software Engineer
Developed a BASIC interpreter (C), a PDP-11 emulator (PMA), a Z80 emulator (PMA) - using Prime Assembly Language and C language.
  • C
  • PMA
1980 Architect
Architect of a Semaphore-based operating system for PRIMOS subsequently used for teaching at the NSWIT.
  • FORTRAN IV
  • PLP
1980 – 1984 Tutor
NSWIT (now University of Technology), Broadway Sydney.
  • Mini Pascal compiler (Pascal),
  • BNF table driven parser (C),
  • Table-driven diss-assembler (PLP),
  • developed an Ada subset compiler in PL1/G - for Primos,
  • developed Primos hardware semaphore emulator - used for student course work
  • Helped port the Portable C compiler to Primos
  • Academic environment tutoring for wide range of subjects.
  • Tutor - education
  • Mathematics,
  • Assembly languages,
  • COBOL
  • PL1-G
  • C
  • FORTRAN IV
  • FORTRAN 77
  • Lisp
  • Ada
  • Pascal
  • RPG-II
  • Languages and Processors (compiler theory),
  • Network Analysis,
  • Micro-controller laboratory etc.
1980 Teacher
Qualified NSW Science and Mathematics teacher, Department of Education.
(resigned to learn/teach Computing Systems)
  • Dip Ed (UNE) 1975 - 1979, Education
  • BSc (UNE) 1975 - 1979
    • Physics,
    • Chemistry
  • Dip Com Sc (UNE) 1979, Computing Science
1980 Amateur Radio Hobbyist
Designed and published high-impedance RF buffer amplifier circuit so I could signal-trace and tune all the oscillators in a HF transceiver that I repaired – without loading the oscillators.
  • electronics
  • RadioFrequency design
  • Amateur Radio
1978 Amateur Radio Hobbyist
Obtained Amateur Call sign VK2ZZB. Built amplifiers, transmitters and some transceivers.
  • electronics
  • radio theory
1975 Electronics Hobbyist Developed V.21 frequency shift-keying 600 baud phone modem, plus V.22 1200 baud tape modem (because I needed one for my computer work).
  • electronics
  • computing
1972 Electronics Hobbyist Rewound a 250 volt laboratory variac that had some burnt-out turns on the later half of the winding.
  • electrical fitting
1970 Electronics Hobbyist Designed switch-mode Triac power-supplies (regulating the primary main-supply side of the transformer).
  • electronic design
1970 Amateur Astronomer Designed and developed a variable frequency inverter drive for synchronous motors used for astronomical telescope tracking.
  • electronic design
1970 Electronics Hobbyist Developed Buck and Boost switch-mode power-supplies before the advent of “jungle” chips.
  • electronic design
1969 Electronics Hobbyist Rewound a power drill motor armature – because my father's drill blew-up and he said I can have it if I fixed it, and then he showed me how to fix it (my dad was an electrical turner and fitter by trade). Electro-mechanical.
  • electrical fitting
1967 Electronics Hobbyist Designed 400 Watt adjustable linear power supply for my father using a large TV transformer and my own-regulator design. Voltage would only boost up by a faction of a volt under a 30 amp load due to the compensation and voltage sense in my regulator design.
  • electronics
1966 Electronics Hobbyist Rewinding valve TV mains transformers for power supplies that I designed.
  • electronics
1961 Hobbyist Light and Morse Key circuit soldered at home direct to batteries and switches etc and taken to school.

My father made me a soldering iron and taught me to solder at an early age.

  • soldering
  • electronics

Logos are property of respective owners.

references