Home

B(ENG) Mechatronic Engineer

Curriculum vitae:

C.V - New Style - Comprehensive (April 2024)

C.V - New Style - Comprehensive (Nov 2023)
C.V - New Style - Comprehensive (Sep 2023)
C.V - New Style - Comprehensive (Oct 2022)

C.V - New Style - Short and sweet only recent roles (Nov 2020)

C.V - New Style - Comprehensive with tech (Nov 2020)

C.V - Old Style - Short and sweet (Nov 2020)

C.V - Old Style - Comprehensive with all roles+tech (Nov 2020)

Other Profiles and Highlights

https://jonginenge.co.za/livecams/index.php (Surfing and Security Cams)
View screenshots of the Jonginenge Live Cams

HTML/ JavaScript features - Specific functionality and features I have written.

What modern programming languages are still missing?

Click here to read. Would like to see some of these implemented by some of the mainstream vendor languages like c#, c/c++, java, extra

Interests:

Developer Blog - Thoughts on developing, that attempt to move us forward.

http://labs.divx.com/node/7029 -  Nvidia - cuda the DivX encoder process, who interested and keen?

http://labs.divx.com/taxonomy/term/25?page=6


MERCEDES-BENZ - SOFTWARE ENGINEERING 

Lead Software Developer/Engineering + Product Own (Robot Early Fault Finding - FFE) 

Deliver numerous improvements, new features, and innovative solutions to ongoing development of Just-in-Time (JIS) edge factory for supplier parts, an ETag React App NodeJs App solutions such as EDI integration and Lower Level Reader Protocol (LLRP) Implementation of adaptors for different hardware vendor devices API. Assumed existing POC PHP+MSQL application tasked with making significant performance improvements and enhancements to data richness and data structures to increase reporting accuracy. Targeting 1 year of BigData storage for FFE, 3/4 billion records per plant. Collaborate with peers and leadership teams to ensure project objectives and overall business needs are met. 


BDD Software development - Client Vodacom

Financial Services Team(FS), for the initial design phase, development of some of the Web and Mobile frontend and backing microservices and integration of a journey spanning multiple upstreams services. The project required one to allow a user to make purchases for 3rd party services, such as electricity products/services, using one of 4 payment mechanisms of which VodaPay was one of them. The journey composition of frontend/backend change as the journey progressed. Advised to use queued, persistent state, transactional comms(undoable/self-cleaning/healing), processing mechanism as opposed to the origin continuous open connection from the client for up to 6 minutes, that is to perform all upstream work. tech NodeJS, expresses, Mobile-react-native, Web

App Enablement Squad pulled off FS and took responsibility to fix native mobile widget that was not functioning correctly on various levels, dated OS compatibility, Auth Failing, Reliability, safe failover, Screen Layouts, UI flow/mechanisms, Threading Requirement, Services, Battery life Optimization, upstream issues. State fixes through various sections,  the react-native to react-native-bridge and native android code.

OTP injection helper framework for react-native-bridge, to assist automatic OTP reading from SMS.

Customer Permissions Management, dynamically driven business logic journey in react native, and chapters chosen dynamically, as they are not known upfront based on server response, the paragraphs of the chapter processed for that section. UI work using flex, to achieve shrinking screen for small device, reduce unnecessary re-rendering and alternative method to sync data to server, without requiring explicit saving, foundation to simplify holistic wiring form controls.

Redblade Software

Work on the backend of a loan platform system that takes 6 minutes to process a loan until the money is in your bank account and handles all billing interest calculations, debits, credits, billing. 

Worked on a loan platform system, designed such that the user journey frontend/backend composition and flow of configurable block unit of tasks/functions wiring is dynamically configurable from the administrative panel, which eliminates the requirement for any further software development. It makes use of a persistent state queue-based communication mechanism.

Built atop AWS (SNS, SQS, SWF, EC2) based on a MEAN stack originally, however, has few adaptations with a postgres mirror for reporting, retrofitted typescript and a Mongo db approaching 1.6TB.  System critical flaws; race; throttling; bug fixes; database-data-fixes(scripts/projecting) and many admin UI improvements to simplify configuration and relationship navigation between the settings.

Bug Fixes (Long Polling-Event Query, SFTP service) any other task, migration to typescript, instrumenting code coverage, more tests and improved factory configuration to provide system flexibility for swapping out subsystem with mock systems. Ideally allow one to run as many tests locally as possible and then only certain sets, different build configuration, depending on 3rd party support and cost of using their services. 

Took ownership of the developing a typescript(TS) framework we call JoiX (wrapper of joi), that allows defining of runtime schema, while implicitly defining the TS type constraints for use at design time. This prevents one having to have any plugins or preprocesses, as it is natively supported by typescript at design time. It forms the base of our configuration loader, with factories support framework. 

Took ownership of the upgrade to TS targeting 2.4, to ensure all basic building blocks were in place; development of mongoose types for TS using the builder pattern for type inference, supporting populate and deepPopulate, to produce the correct composition of fields-and-modifiers for the final query resulting shape and CRUD operations validations of shapes and types. Improved the C# schema generator using an annotations approach. It required backwards compatibility and peace meal upgrading approach when upgrading missing, corrected-unified-type or suitable weaker fail-over type, for a consensus across mongoose, postgres, typescript, swagger-api . Major refactor of generator and mongoose TS type to use interface composition, with an improved generic TS type templating pattern, boasting a 3 X performance gain and linearly scaling minor memory usage.

Also revamped this to simplify things drastically and allow runtime and typescript types to be defined at the same time. It features an adapter mechanism were typescript is a first-class citizen for determining the shape and structural form, with an alternative approach to annotations for adapter specific configuration, for translation of schemas to different systems. Schema can also be partially defined index into a complete schema for runtime database, ensuring all logic for unit code to work is in one place and not distributed all over the place. See github, not all just there yet. 

Have come up with a new mechanism I call tail-recursive validation technique for typescript, that allow validation of recursive structures were the type constraints vary with each nested iteration.

A strategy was employed, whereby existing endpoints controllers code would be upgraded to TS, swagger definitions validated by exercising prod run of endpoints to ensure system fields and types correlated between different domains. A tedious, meticulous, methodical approach of inspection of database records and code interrogation to identify an upgrade path to put the whole system into consensus. Implicitly resulted in creating TS projection helpers and mongoose TS build pattern improvements for implicit type inference. Execute all said upgrade changes, implicit fixing of bugs on system-wide bases to approximately 30 repositories that sharing typing repository of definition on the order of 5000 unique fields. Migrated the backend NodeJS system from typescript 2.8 to 3.2.

Uncovered a new approach to architect code structure for working with Amazon SWF approach style, that results in simplified contained units of work with all related code and lookups, which can be type-checked across the board. Units of work then index at compile time and are then used to assemble a database schema with migration support and API endpoint code. This also units test to be written.

This approach should be suited to both c# dot.net with annotations and typescript, with 2.0 typing enhancement for type extraction as above. The abstract pattern is suited to abstract data capture and interrogation of capture data or potentially cross interrogation of captured data, were by a harnus, will compile the database and maintain the database schema dynamically with version mutation support. Each abstract unit can be used in SWF type flow or own SWF implementation or run on API interface as all the same abstract pattern. frontend is free to change the layout of the captured information. This means that the system should remain maintainable at scale with high productivity and ability to easily change the wiring as the whole system is type-checked, can detect a problem at build time.

Links: 

1. TS Community Submissions and improvements 

2. Mongoose Relation Inference Types 

3. JoiX Factory Framework

EMSS Consulting as a Software Engineer.

Click here to see the real details of work undertaken and examples.

He started the Netcon Import Process re-write in c# dotnet core with current CTO at the time for a period of about 4 months, he then became responsible for finishing, validating, auditing, bug fixing the old and new product for just short of his tenure. Improvements reduced a weekend process to two hours, to highlight a section reduced to 9.5s versus the typical approach of 15 minutes, by having a sound understanding of the internals, databases, cursors, indices.

He also solely took on the IXUS: Mobile site inspector/Manager project, that used a custom sqlite sync database mechanism. He then re-vamped portions of the data capture workflow; server, client, operator communications for errors, reliability, clarity, which prevents unintentional loss of work, especially with locking features that were enhanced; As well Improved camera functionality support.

Took over Framtracksa product written in NodeJs, Typescript, Aurelia development from the CTO frontend/backend. The product logs vehicles gps positions while in the field. This historical information is incrementally indexed on ingestion and then presented in two formats: web maps visual format, featuring the route, speeding, teleportation, start, stop, idle events, row coverage; Summary reports, Alerts (Speeding, Coverage), Orchards Coverage, Diesel Stations, Crop Protection, Workshop, Vehicles, Human Resources, Overtime, Leaderboard. He worked with the client to validate and audit existing functionality, adding many new features, bugfix, bandaids and improvements to bring a working, usable product to the market. 

He also undertook any other ad-hoc issues within the software department, which fell under his skill set, such as bugfix tweaks to the IXUS: Desktop simulation modeller software.

www.farmtracksa.com built using (NodeJS/Aurelia/TypeScript) for about a year now, while finishing off

Previously Employed by GLS Software with the title of Engineering software developer.

Work on Albion a sophisticated 2D CAD product for rendering GIS (geographic information system)

Click here for manuals and presentation on Albion

Swimming Course Conversion factors explained 2007/2008

Designed Websites

Website and archives of the site I have developed over the years.

CNC 2D Optimization - Masterwood 313 - 2008

Optimization of 2D rectangular grid pattern for position location (drilling/sub program) on a CNC that does not support

a to 2 axis drill command. Read more

Adaption of Masterwood 313 CNC program to support multiple directories - 2008

One of the biggest limitations is being limited to 999 programs on a stiff and hard disk drive

as well as there being no ability to file programs descriptively or by function they perform. Read more

Access Swimming Manager - 2005

First developed due to the need of a simple free program that would facilitate the running

and setup of a gala once a year, to provide results, record-breakers instantly at the end of a gala.

This being the requirement by Parel Vallei High School for their Inter-house. inter-schools meet.

It was then later used to run Grey Dogs Swimming Gala in 2010. Read more

Cutting List - Exclusive Cabients 2003/04* 

The program function is capture the basic essence of a product, store it and be able to easily

recall the information at in suitable logical format. So that a similar product could be accurately

manufactured, cost with minimal user input in a matter of seconds and

eliminating the chance of error. Read more

Some simple Programs written back in the day

Outlook Express - Roaming Profiles -2004 

Outlook Express does not allow for the ability to have roaming profiles, like Microsoft Outlook.

With some minor registry tweaks namely exports/imports of registry files on log on/off,

that can be easily set up in server 2000/2003 or any server software. Read more

Web Results Manager for Team Manager 2004

This program provides you with a basic manner in which for you to connect to your

TMII (Team Manager 2) database,  through a graphic user interface, to compile meet results

of swimming galas into a highly sophisticated HTML document, which would be easy to use

and upload to the Web.. Read more

Half Life 1 Mapping

Muffin is a simplistic deathmatch, free for Half life 1 map, and one of those that you design, so

that it will at least compile so you and your mates can play in your creation. Read more