⚙️ Project:inspireOz: A information service management system
This is a management system specifically designed to standardize events in internal operational processes, which include:
- Report
- Approval
- Work hour management
- Automation/schedule ticking
- Asset relations(to ticket)/management
- Notify module
- Other micro service

🏒 Development:
-
File Upload/Download & Relation:

- File upload/download development module in Full-Stack.
- Multi-file upload available.
- Cluster file synchronize.
- File Relation to ticket.
-
Full-Stack CI/CD automation:
- Using shell script to achieve deployment.
- Using gitlab to trigger a runner which locate at different VM.
- Develop under offline situation.
- Full-Stack deployment & data back-up(include database).
- While success, notify the whole team what’s just updated base on gitlab record.
- Using SonarQube to execute source code scanning before CD.
- Website footer update base on git commit hash.
-
2 Factor Authentication & Safety improvements
-
Develop a Captcha verification mechanism according to the customer's requirements.
-
Sequence diagram design

-
Captcha expired mechanism, and renew itself.

-
Users will be redirected if they haven't changed their password for three months.
-
Login failure lockout mechanism.
-
Adding the complexity requirements for passwords.
-
Development of a multilingual website.

- Using
Format.JS
- Compile into Language pack.
- In the future, maintenance for each language pack will not be necessary. This package includes ID management.
- Merging language packs using python because of the differences between the pre-development and post-development versions.
-
Mail To Ticket Development
- Integrate the authentication token from Azure Portal to use O365 for receiving emails.
- Includes database design and backend development.
- Deploy using Dockerfile.
- Perform version changes using a shell script.
-
Key verification mechanism.

- System-level key verification that limits specific functionality for licenses with simple keys.
- Upload key mechanism to renew key.
- License verification utilizing Django Cache for latency reduction and optimization.
- Display encrypted key field information on the frontend.
-
Other
- Report development(xls, doc, pdf)
- Subsequent tracking and analysis of unexpected incidents.
- System outage caused by insufficient capacity. → Disk mounting.
- Docker logs consume a large amount of capacity, use a script with crontab to clear them.
- Docker restart causing Apache service to malfunction.
- Troubleshooting service outage caused by program bugs.
- Recording and writing development documentation.