My recent experience as a Machine Learning (ML) Engineer with 2+ years. Familiar with ML methodologies, namely data preprocessing, training phase, and testing phase. In data preprocessing, it can be ascertained that data cleaning, data transform and feature selection have been carried out so that they can be implemented in model building at the training phase. After obtaining the most suitable model, a final model is made, then the final model is applied in the model evaluation at the testing phase, the results of which can be measured by metrics. My thesis is about the Development of Machine Learning-Based Intrusion Detection System.
My experience as a Software Engineer/Developer for 3 years has made me familiar with software development both front end with HTML, CSS and Javascript and back end with PHP framework and MySQL, Oracle and PostgreSQL databases. When I was a System Analyst for 10 years, I also made the scope of API and database development and directed vendors in designing according to application needs, including using the API Management System and changing the repository from SVN to Git and implementing CI/CD using Jenkins. In both roles I also bridge the needs of internal users and ensure the successful implementation of the application by the vendor. When creating ToR for IT projects, also conduct research on the development of IT technology that will enhance system capabilities according to EA with an understanding of the architecture of Business Processes, Data, Applications and Infrastructure.
Experiences
Jan 2006 - Current
Machine Learning Engineer and Back End Developer at Projects.co.id, Fastwork Technologies Indonesia (Freelance)
As a Machine Learning Engineer or Data Scientist:
- Discuss topics, manual calculations, references, stages, goals, and datasets with end users
- Implement data preprocessing, model building, model evaluation, data visualization and result output based on the results of the discussion
Projects
- Convert Model Tf Lite Into Smaller Size
Image classification uses Resnet 50 and reduces the saved model size to 40 MB
- Named-entity Recognition NLP Crime News
Named-entities only on location and time (date) using spaCy
- Sentiment Analysis and Clustering for Essay Opinions and Comments (Literary Works)
Sentiment analysis uses SVM, previously labeled data using lexicon, and clustering using K-means
- Sentiment Analysis of Twitter Data
Sentiment analysis of twitter data uses Naive Bayes by calculating the probability of words in one sentence to produce positive or negative conclusions
- Data Analysis using Google Collab
Analyzing data to know probability and implement manual calculation
As a Back End Developer:
- Discuss user requirements with end users
- Seeing the level of complexity of the existing system according to user requirements
- Implement solutions to models, views, and controllers according to business processes on problematic web application features (modules)
Projects
- Adding Function in Laravel 8 Framework
Implementation of Expert System Algorithm in to function
- Integration and Implementation API SiCepat and J&T
Implement delivery process at ecommerce platform
- API modification
Add an external object to existing API
As a System Engineer:
- Configuring the Linux web server so it is ready to be used for web application
- Configuring HAproxy for Linux web server
- Configuring Maria DB, MySQL, Oracle DB, and PostgreSQL databases on Linux servers
- Migration of web applications and databases to Linux servers
- Perform tuning or optimizing of Linux server capabilities for web servers
- Maintenance, patching, update Linux web server, reverse proxy/HA server, and web application
Projects
- Configure load balancer HAProxy in RHEL or Centos 7
- Monitoring nodes that have been configured with HaProxy
- Configure nginx server as reverse proxy + SSL
- Configure apache server as nginx reverse proxy destination node
- Configure PHP-FastCGI Process Manager (fpm) to maximize the use of server resources so that the application runs optimally
Feb 2021 - Nov 2021
Development of Machine Learning-Based Intrusion Detection System Methods at the Feature Selection, Class Balancing, and Ensemble Learning Stages [Master Thesis]
Researcher
Abstract: The risk of cyberattacks is directly proportional to the growth of applications and computer networks. An Intrusion Detection System (IDS) is implemented to detect cyber attacks in network traffic. However, there are problems detecting unknown attacks or new types of attacks. In addition, there are performance issues regarding detection time, detection accuracy, and false alarms. A machine learning approach takes anomaly detection in network traffic to reduce these problems. The development and utilization of IDS with machine learning have been applied in several studies to improve performance and evaluate attack detection predictions. Choosing the right machine learning approach is necessary to improve the accuracy of cyberattack detection. This research uses a homogeneous ensemble learning method that optimizes tree algorithms, especially gradient boosting tree - LightGBM. The Communications Security Establishment and Canadian Institute of Cybersecurity 2018 (CSE-CIC-IDS 2018) dataset evaluated the proposed approach. The Polynom-fit SMOTE (Synthetic Minority Oversampling Technique) method solved the dataset imbalance problem. The application of spearman's rank correlation coefficient method to the dataset resulted in 24 subset features of the 80 dataset features used to evaluate the model. The proposed model achieves 99% accuracy; precision 99.2%, recall 97.1%; F1-score 98.1%; ROC-AUC 99.1%; and an average-PR of 98.1% and increased the training time of the model from 3 minutes 25.10 seconds to 2 minutes 39.68 seconds.
Keywords : Intrusion Detection System, oversampling, feature selection, homogeneous ensemble learning, CSE-CIC-IDS 2018
Feb 2021 - Jul 2021
Anomaly Intrusion Detection System Based On Homogeneous Ensemble Learning with Oversampling and Feature Selection [Conference Paper]
Researcher
Abstract: The risk of cyberattacks is directly proportional to the growth of applications and computer networks. The Intrusion Detection System (IDS) detects anomalies in network traffic to reduce this risk. A machine learning approach is needed related to this. The development and utilization of IDS with machine learning have been applied in several studies. Choosing the right machine learning approach is needed to improve cyberattack detection. In this study, we used a homogeneous ensemble learning method that optimizes the tree algorithm. The Communications Security Establishment and Canadian Institute of Cybersecurity 2018 (CSE-CIC-IDS 2018) dataset were used to evaluate the proposed approach. The Polynom-fit SMOTE (Synthetic Minority Oversampling Technique) method was used to resolve the imbalanced dataset problem. 23 feature subset results from the application of feature selection on the dataset were used to evaluate the model. The proposed model achieved 99% accuracy; 99,2% precision, 97,1% recall; and 98,1% F1-score.
Keywords: intrusion detection system, oversampling, feature selection, homogeneous ensemble learning, CSE-CIC-IDS 2018
Jul 2012 - Dec 2013
Frontend Developer at Wowrack Indonesia
Implement backend API to Wowrack customer portal
- Discuss methods of API module with System Analyst and Back End Developer
- Implementing business processes based on methods from the API module on each web application feature with a web design framework (Bootstrap)
- Ensure every feature of the web app runs properly
Projects
- Customer Portal Wowrack [customer.wowrack.com, customer.wowrack.co.id]
Mar 2011 - Mar 2012
System Analyst at PT Codecon
Analyzing desktop-based information systems with Oracle database for migration to web-based information systems
- Discuss user requirements with business owner
- Create ERD and tables according to the business process discussion results
- Describing business processes into modules
- Discuss and deliver business processes per module with Back End Developer
Projects
- Staffing Information System the local goverment Klaten
Jan 2009 - Dec 2009
Frontend Developer at KYS Techno Solution
Flash developer & front end developer with PHP
- Discuss user requirements with Back End Developer
- Prepare web pages according to business processes so that they can be processed by Back End Developers
- Make sure the web page comply with UI/UX rules
- Project
- Website Dinas Kesehatan Kepulauan Riau
Jan 2008 - Dec 2008
Back End Developer at JogjaCamp
Develop information system, company profile web based with PHP framework
- Discuss user requirements with Business Analyst
- Create ERD and tables according to the business process discussion results Implementing business processes on every feature of the web application on the web design as a result of the web designer
- Ensure every feature of the web app runs properly
Projects
- Website Denafa Catering
- Website FIB UGM
- Website Ikatan Alumni ITB
Skills
- Intermediate - Computer Networking
- Novice - Security Engineering
- Advanced - Research
- Advanced - Scientific Research
- Advanced - Research and Development
- Intermediate - Artificial Intelligence
- Intermediate - Machine Learning, Deep Learning
- Novice - Artificial Neural Network
- Advanced - Python3 including NumPy, Sklearn, Matplotlib, and SciPy - Scientific Computing and Data Science
- Intermediate - PyTorch
- Intermediate - Pandas
- Intermediate - Data Science (Data Analysis, Data Visualization)
- Intermediate - Data Analytics
- Intermediate - Python Programming Language
- Intermediate - Engineering Sciences Problem Solving
- Intermediate - Information Technology
- Intermediate - Cyber Security
- Intermediate - Application Security
- Intermediate - Information Security
- Basic - DevOps
- Intermediate - Network Security
- Basic - Network Administration
- Advanced - Instrusion Detection
- Intermediate - Vulnerability Assessment
- Novice - Penetration Testing
- Intermediate - Incident Response
- Intermediate - MikroTik Certified Network Associate
- Intermediate - Analytical Skills
- Advanced - Teamwork
- Intermediate - VMware Workstation 11
- Advanced - Linux Server
- Intermediate - Linux Server Administration
- Advanced - Software Development Life Cycle
- Advanced - System Analysis, Design and Implementation
- Novice - Continuous Integration and Continuous Delivery (CI/CD)
- Advanced - Object Oriented Programming
- Basic - .NET Framework
- Novice - Java
- Novice - Go Programming Language
- Advanced - RESTFul APIs/Web Services
- Intermediate - Functional/System Integration Testing
- Advanced - PHP
- Intermediate - Back End Development
- Intermediate - Laravel PHP Framework
- Intermediate - CodeIgniter 4
- Intermediate - Database Query
- Intermediate - Oracle SQL
- Advanced - MySQL Database
- Intermediate - PostgreSQL