Experiences
- Setup and maintain internal services (e.g. wireless controller, monitoring, dashboard, logging)
- Setup and maintain mass deployment service via network
- Setup router, network switch, firewall and access points for customer
- Lead to dockerize all services
- Lead to implement CI/CD workflow
- Developing devices config backup service using Git
- Developing monitoring scripts using Bash and Python to monitor router, network switch, wireless controller, PBX and MDM service
- Developing a custom RSS feed service using Python to fetch news from websites which does not provide RSS feed
- Developing a centralized management system for routers located in the offices of customers
- Developing tools for internal use to automate routine tasks
- Integrate monitor and log service notification to Slack
- Diagnostic and repair simple hardware failures of network switch and router
- Diagnostic and repair networking and Wi-Fi performance issues
- Configure BGP for IP Transit
- Configure and maintain Dell servers, Cisco switch, Fortinet firewall, Synology NAS in IDC
- Monitoring network traffic using LibreNMS
- Setup and maintain internal services (Mattermost, Redmine, Graylog, LibreNMS, GitLab, etc.)
- Build and maintain customer office network, infrastructure
- Developing easy-to-use LDAP Manager
- Customize OpenVPN Server
- Developing Cloud LDAP and Cloud RADIUS
- Developing VPN service for customer to connect our Cloud LDAP and Cloud RADIUS
- Build VPN service with OSPF to implement scale-out scalability
- Developing scripts for MDM service to manage devices
Maintain Servers, Networking devices, Internal Services, Developing and build internal systems
- Configure BGP Routing, Firewall rule on Mikrotik, Cisco, VyOS, Juniper
- Configure VLANs on RouterBoard, Cisco Switchs
- Configure Ubiquiti (UniFi) Wireless Access Point
- Manage DHCP, NAT, DNS Service
- Maintain IP-PBX, IP-Phone
- Maintain LDAP, RADIUS Service
- Monitoring Server status (e.g. Hardware health, Temperature, CPU, Memory, Network, Power, Disk usage) and Server room environment with our own software
- Monitoring network traffic using LibreNMS and Moloch
- Manage Door access control system
- Upgrade networking device from Mikrotik to Cisco
- Setup transit tunnel and BGP session to using our own Public IP in Office
- Setup DNS filter using AdGuard Home
- Setup centralized log management using Graylog
- Build our own monitoring system using Prometheus, Grafana, InfluxDB, HealthChecks
- Developing our own LDAP Manage System and deploy automaticly using GitLab CI/CD and Docker
- Developing 2FA VPN Server using OpenVPN
- Developing automated printing label system using Golang
Maintain Laboratory Server, Service and Networking devices
- Manage/Assign limited Laboratory IP
- Configure VLAN on Juniper Switch for separate public network and research network (e.g. SDN, Openstack)
- Maintain vSphere for provide laboratory services (e.g. Web, MySQL, FTP, VPN, NAT)
Maintain and customization frontend and cooperate with the backend to Developing new features
- Found BOM Bytes in PHP script for download program that cause downloaded binary broken
- Replace WinRAR with 7-Zip for packing config into client execution binary to reduce compress time
Maintain Department Server, Service, Networking devices
- Configure server room and pc classroom Firewall, VLAN, NAT, Static DHCP Binding on RouterBoard router and Juniper Switch
- Build and Maintain pc classroom network files sharing service with 2 roles (Teacher - readwrite, Student - readonly) on Windows Server 2016
- Use ITMS Mass deploy System and Software Installation/Update service to manage around of 90 computers
- Build private cloud using Promox VE to provide public services (e.g. DNS, Online Judge)
- Maintain in-house GitLab Server to manage online judge source code
- Developing pc classroom network manage app with cordova, HTML, JS and Python for api communicating with routerboard router
- Using observium to monitor network and service status
- Administrative of G Suite console for department
Projects
CareTaipower - Taiwan Power Monitoring Dashboard
CareTaipower Bot - Taiwan Power Monitoring Bot
CloudJudge - Online Judge for PCCU CSIE
PCCU Bot - A Chatbot for PCCU Students and staffs to get information of school convenient
PCCU Weather - PCCU Realtime Weather Information
PCCU Course Rating - A Website for PCCU Students to share course experience
Hidden Input Finder - Extension for Chrome to find out hidden input field of webpage
Skills
Linux
Cisco
Juniper
Ruckus
Aruba
RouterOS
Fortigate
Palo Alto
BGP
OSPF
PHP
Python
Golang
Bash
Zsh
Nginx
Git
GitLab
MySQL
MariaDB
MongoDB
Redis
Proxmox VE
Proxmox Mail Gateway
VMware vSphere
Google Workspace
Amazon SES
Amazon SNS
Amazon Lambda
Cloudflare CDN
Cloudflare Zero Trust
Docker
Zabbix
Grafana
Graylog
3CX
FreePBX
FusionPBX
Mosyle
Jamf
Soldering
Education
- Study Software Engineering
- Developing Online Judge for PCCU CSIE to save labor costs using Bootstrap and jQuery for frontend, Laravel for backend and shell script for compiling and judging