Fairuz Hamzah

Fairuz Hamzah

Aspire to develop better mechanics ( in problem solving ) by utilizing technologies with regard to business objectives.


Personal Details

Name / Gender / Age : Mohamed Fairuz Bin Hamzah, Male, 31 Years Old

Citizen / Race / Religion : Malaysia, Indian, Islam

Address : Bukit Indah, Ampang, Selangor D.E.

Education : Diploma In Computing @ A.P.I.I.T ( U.C.T.I )

Experience : Since 2005

 

< Skillset />

Amazon Web Service EC2 s3 SQS RDS SES 80%

PHP Laravel Kohana PHPFuel Wordpress 80%

.NET (VB/C#)82% Framework 2.0 Framework 3.5

JAVA Spring 62%

Scripting HTML Javascript CSS 80%

SQL / SQL-T Microsoft SQL MySQL Postgress SQLite 90%

NoSQL CouchDB Redis Postgress 70%

Webserver IIS Apache Nginx Tomcat 80%

Automate Test phpTest HP Load Runner 9.0 40%

Server-side Javascript Node Angular Ember30%

 Indication of the percentage  ? 

‐30% & Less : Know how it works with try-out on localhost.

‐From 30% to 50% : Good understanding with try-out in actual server.

‐More then 50% : Better understanding of the subject with actual work experience.

 Ready to pickup and work on any new language / framework / technology within a week.

 

< A Day At Work />

My day usually starts with by checking project status, which if new then ensure the project flow is sync with project timeline. For completed project, ensure its running as expected. Be it new or completed project, it takes 2 part effort to keep project in sync : 

  1. Sort out communication by checking any messages (email / SMS / Whatsapp / Slack etc.) need to send or to reply client, project manager, sales team and others. Anything require immediate attention, will be discussed with team-mates (if need to) and send out the message. The messages usually about whether the matter has been resolved (bugs, issues etc.) or currently in progress with estimated delivery time.
  2. Manage overall project movement in regard to code using productivity tool (Trello, Yammr etc.) by importance of an item / card. An item / card usually contain new feature, client request or reported bugs. Priority goes to bugs (depends on impact over system) followed by client request & new feature. Critical errors will be fixed immediately.

Next, is to keep code in sync means pull, push, merge, resolve conflict etc. and ensure repo is up-to-date. After that, check result of batch run (if any) and its related logs for any issues or anomally. Once batch check completed, proceed to check for any rollout (feature/bug fixes) to production and if there is, start by getting answers for the following questions:

  • Is there any conflict between past rollout with new rollout?
  • Does the rollout require any data migration?
  • Does the rollout require to notify client or other parties?

This is to ensure production rollout goes smoothly and transparent to end users. Once completed, continue to work on task in hand while keep an eye on system for any irregularity. Keep an eye on system basically done by checking from time-to-time on database transation + communication(email/sms etc.) between system and users(vice-versa). Keep an eye on system also help me to take pre-emptive action when an issue occured. Follow-up with client on any pending feedback or issue. For any new request, discuss with the team to set priority. Continue to work on code, push to staging & test. Items that has been tested successfully will be placed under next production rollout.

At the end of day, tidy up code, commit any changes and stay alert for any issue / urgent matter.

< Projects & Employement />

Project Title : Insights

  Employer : Brigthan System Sdn. Bhd.

  Client : N/A

  Description : 

Insights is a dedicated Job Portal for Retail and Food & Beverage Industry. This product consist of microsite and Applicant Tracking System. The microsite is custom built which the look & feel represent client brand.

  Responsibilities : 

  1. PHP » Plain
    • Develop microsite which consist of landing page, job listing and apply form for selected page.
    • Develop the microsite by creating 3 to 5 page and in some cases, as single page application.
  2. PHP » Laravel 5.2
    • Develop API for Microsite uses, i.e. Job Listing
    • Develop applicant module for employer to process applicant.
    • Develop interview module for employer to process applicant.
    • Develop auto-manage module to process applicant without employer.
    • Develop analytic module for employer to understand applicant demographic & internal processing.
    • Develop report module for employer which help them to make decision.
    • Research on mechanics to auto-generate microsite base on user input.
    • Outcome of research to take advantage Postgress handling JSON object store dynamic form.

Project Title : Ricebowl.my

  Employer : Brigthan System Sdn. Bhd.

  Client : N/A

  Description : 

Ricebowl.my a job portal set up to address the gap between business owners and job seekers for non-executive sector. The difference with Maukerja.my is that this platform target specifically for Chinese community.

  Responsibilities : 

  1. PHP » Laravel 5.1
    • Develop language handling module which check on user profile.
    • Develop completeness check on user profile.
    • Develop Reminder batch for incomplete applicant.
    • Develop Expire Job batch for job posting that has been expired.
    • Optimize SQL queries to address performance issues.

Project Title : Super Messaging Platform

  Employer : Brigthan System Sdn. Bhd.

  Client : N/A

  Description : 

Messaging Platform is a service to handle communication between a platform, e.g. Maukerja.my and its user (jobseeker, employer etc). The communication methods are SMS, email and such. The objective of this service is to (1) have consistency over communication between any platform and its user (2) flexibility in choosing service provider for a communication channel, i.e. for SMS its between Trio Mobile or Twillio.

  Responsibilities : 

  1. PHP » SLIM 2.4
    • Design mechanic to handle sending out messages. This messages can be in format of email, sms etc.
    • Develop API using SLIM Framework which handles request, response. The API is developed in format to respond to a request quickly by sending to queue without holding back till the messages sent out successfully.
    • Develop queue system to process each messages sent via API.
  2. Amazon Web Services » SQS, s3
    • Develop additional queue system using AWS s3 as a fallback to initial queue mechanics.
    • Research and built a prototype queue system using AWS SQS. However this was discarded and use AWS s3 as fallback since there is possibilty of double processing due to distributed components.

Project Title : B40 - Microsourcing to Generate Income

  Employer : Brigthan System Sdn. Bhd.

  Client : MDeC

  Description : 

Bottom-40 (B40) income group refers to Malaysians with a household income of below RM4,000 monthly. Microsourcing to Generate Income for the B40 is a project under Digital Malaysia Initiative which facilitated by MDeC. This microsite aim to introduce and promote the programme to Maukerja.my visitors. People who may interested can registered for this programme. There is also lucky draw for those who registered.

  Responsibilities : 

  1. PHP » Plain
    • Convert physical (paper) apply-form to digital (html) apply-form. Due to its detail, the form has to be breakdown into 3 steps.
    • Develop the form using Twitter Bootstrap for responsive accross devices.
    • Develop mecchanics to persuade users to complete all 3 steps of forms.
    • Develop reminder batch for partially filled form to persuade them to completed registration.
  2. PHP » Wordpress 3.8
    • Intergrate the microsite to Maukerja.my using iFrame. The microsite was suppose to be standalone with its own domain name, but embedded to Maukerja.my as to promote Maukerja.my brand.
    • Develop popup box plugin with feature to enable/disable the display and also to enter text with with images. This popup appears on any page, once a week. Mainly use to promote the B40 Programme.

Project Title : Maukerja.my

  Employer : Brigthan System Sdn. Bhd.

  Client : N/A

  Description : 

Maukerja.my a job portal set up to address the gap between business owners and job seekers for non-executive sector.

  Responsibilities : 

  1. PHP » Wordpress 3.8
    • Optimization over SQL
    • Added custom error handling and variable clearing function in config file.
    • Develop s3 plugin to push all uploaded file to s3 and keep it sync.
  2. PHP » SLIM 2.4 (API for Android & iOS App)
    • Develop Mobile API without effecting main website flow & functionality; which is Wordpress base system.
    • Usage of Stetho (by Facebook) to inspect API for issue.
    • Optimize SQL to ensure able to handle API load.
  3. JAVA » Spring 2.0
    • Develop Internal Daily & Weekly Report Batch which generate information based on data collected from day / week before. The generated report displays information such as Total Applied Job, Registered Employer etc. to assist Admin daily operation.
    • Develop SMS Reminder Report Batch which notify Employer via SMS on Applicant that hasn't been processed.
    • Develop Weekly Reminder Report Batch which notify Employer via Email on overall activity over Applicant applied for Job Posted.

Project Title : Event Management Portal (EMP)

  Employer : Webway Sdn. Bhd.

  Client : TalentCorp Malaysia

  Description : 

Event Management Portal (EMP) developed for TalentCorp Malaysia to facilitate events as apart of initiatives to address the availability of talent, specifically (1) Optimise Malaysian talent, (2) Attract and Facilitate Global Talent and (3) Build Networks of Top Talent. Event Management Portal (EMP) is a web application to create, manage and promote events organized by TalentCorp for Malaysian abroad, both student and working professional.

This event, such as Industry Insight: Oil & Gas Sector aims to connect Malaysians abroad to interact with corporate leaders from participating companies. Participants would be able to seek potential career paths with the companies as well as gain insight into the Malaysian sector's current growth.

  Responsibilities : 

  1. PHP » Plain
    • Develop, maintain & manage sites public pages.
    • Develop, maintain & manage Event module. The module allows admin to create, edit, delete & publish an event. Event module comes with the functionality to Create Custom RSVP Form (Drag & Drop).
    • Develop, maintain & manage RSVP Responses module. The module allows admin to view RSVP made for an event and download related files such Cover Letter, Resume etc.
    • Develop, maintain & manage CRON task, such as Event Reminder, which set to send out 2 days before the event.
    • Develop, maintain & manage Mass Mail module for admin to perform mail blast. The admin can email out either event related or generic purpose such as informing location changes.
    • Develop, maintain & manage Bounce Mail module to capture mass mail failure. The email that is processed will be archived. This module is a CRON run on daily basis.
    • Google reporting to generate report on Event based on RSVP made for a location.
    • Export modules for Event Responses, Mailing List. The function exports data into Excel or CSV file format.
    • Utilize PHPMailer for mail related functions.

Project Title : Structured Internship Program (SIP)

  Employer : Webway Sdn. Bhd.

  Client : TalentCorp Malaysia

  Description : 

TalentCorp, in collaboration with the Ministry of Higher Education (MOHE), has initiated a Structured Internship Program in which a company that hires interns to undergo its structured internship program endorsed by TalentCorp is eligible for double tax deduction for all related expenses incurred on the interns.

Structured Internship Program (SIP) is a web application serves as interface for Company to register & submit Internship Program with relevant documents (SSM certificate & Internship Structure Documents). The submitted Internship Program will be reviewed by Admin (TalentCorp) and will be approve, reject or request documents.

  Responsibilities : 

  1. PHP » Plain
    • Maintain & manage Company Registration module. The module allows employer to register for the Internship program. The registration process does involve a set of questionnaire to determine whether an employer is qualified. Should the company answers matches requirement, the account will be approved else it will undergo admin review.
    • Maintain & manage Internship Application module. The module allows employer to submit and manage Internship program. And it allows Admin to perform evaluation over the submitted application.
    • Maintain & manage Company Profile for Employer to change company details or such.
    • Maintain & manage CRON Renewal Reminder. The application submitted will be expired in yearly basis and the CRON will send out reminder for those applications almost expired.

Project Title : SpeedSend / Vremit

  Employer : Ncore System Sdn. Bhd.

  Client : CIMB Bank

  Description : 

VREMIT is an online web application develop to fasten and centralize the remittance process between countries. At the point of development, the application covers remittance from and to Malaysia, Indonesia, Philippine, Thailand, India, Vietnam.

The application developed in VB.Net using MVC architecture (3-Tier) + Service Oriented Architecture (SoA), MSSQL for database and reporting (SQL Reporting). The application utilize COM+ to handle heavy + simeltouneous requests. This include object pooling, distribution and synchronization support.The SoA aspect use SOAP (Simple Object Access Protocol) to receive request and response base on WSDL file (.Net).

  Responsibilities : 

  1. VB.Net » Framework 2.0
    • Replace login function from session to cookie base (implemented thru-out the system).
    • 2FA Login Module using token (for agents) & Internal AD (for Staff).
    • Develop auto-logout features whereby if the application left idle for certain period of time, the application will log out the user (the idle time value is parameterized).
    • COM+ function to handle database transaction.
    • AJAX based paging (implemented thru-out the system).
    • Developed Console Application To Generate The Report Automatically. The Console Application invoked by MS Task Scheduler.
    • Design, develop & maintain a page (using JavaScript to change the parameters) to view more then 23 reports.(using SQL Report Viewer + Report Web Service).
  2. JAVA » Plain, OOP + Multithreading
    • Develop , maintain & manage 14 batches ( 13 Daily Batch + 1 Batch Every 30 minutes)
    • Most of the batches generate Common Interface File, which upload to the staging server for further processing by other application (e.g. GFMS / ITIS / BDW).
    • Other batches will generate report for verification purpose (e.g. Profit & Loss).
    • The Murex batch ( every 30 minutes ) is design and develop with fail-proof features.
    • Design & develop each batch with multi-threading features, in-case we need to run more then one batch at a time (e.g. run different date batch simultaneously).
  3. Microsft SQL » SQL, SQL-T 2008
    • Create & maintain Views to pool data from different region (each region have its own database).
    • Create & maintain Views with pre-formatted data for reporting purpose. For example, the transaction direction (e.g. if Transaction from Malaysia or Refund back to Malaysia it’s inbound else outbound).
    • Create & maintain Stored Procedure for reporting purpose (SQL Reporting / Java Reports).
    • All Views and Stored Procedure are carefully design to maximize the maintainability (e.g. A Stored Procedure shared for different reports ) and performance ( e.g. only select needed fields ). Usage of method such as Pivot / Unpivot + Temp table + While Loop really helps in this matter.
    • MS SQL base batch , retrieve file from Staging Server and process it (insert/update data to table). SQL-T file reader, this is use in verifying the Interface file generated by Java application.
    • Create & maintain User Defined Functions to generate & format id. This is to maintain the consistency in Id (e.g. User ID, Transaction Id etc.) distribution thru-out the system.
    • Database Maintenance (backup, restoration etc. )
  4. Documentation & Others
    • Write test-script & monitor the testing to assure its adhere to test-script
    • System Design Specification - Flowchart, Database Relational etc.
    • Deploy application to production.
    • Involve in testing (Performance Testing / System Integration Testing / User Acceptance Testing / Operation Acceptance Testing).
    • Provide support for production issue.

Project Title : Let's Invest Micro Portal

  Employer : Scream Interactive Sdn. Bhd.

  Client : AmBank Assurance

  Description : 

The primary objective of this project is to replace the existing Investment Linked Funds in the main website. The new website will be a more interactive micro portal to display NAV (Net Asset Value) prices using table and graph. The enhanced features will become other channels for the investors to check the progress of Investment Linked Funds, by presenting the information of the funds objective and description in enhancing and lively manner. The secondary objective is to become part of the marketing tools for the Sales and Marketing department.

  Responsibilities : 

Developed in Flash with .Net backend. The Flash application was developed by another programmer & I work on the API + Management Portal. Following is my responsibilities:

  • Funds’ control, such as edit, enable/disable funds.
  • Allow admin to perform rollback function for the websites.
  • User access right controls for all portals which potentially using CMS to control the web page.
  • All outdated NAV prices will store inside database.
  • All CMS’s activities, such as login/logout date time, funds’ upload/edit, and database activities, which done by user will track inside database.
  • Newsletter will be updated manually into the server. All newsletters updated will be stored in the server with no newsletter being overwrite.

Project Title : RFID tag for Party Game.

  Employer : Scream Interactive Sdn. Bhd.

  Client : Confidential

  Description : 

This is an event with party game where participant need to wear RFID tag to collect points at each each Game Station. Points collected will determine the prizes. The myKad Reader is to register participant and to collect prize.

This is web application developed in .Net. Participants need to register using their myKad & this information will stored in database. This registration process which uses myKad reader also serve as step to validate the participant age limit & citizenship (only Malaysian allowed). This registered info will used to keep track their points. When participant compete in game, they required to wear the RFID tag which use to collect points and sent to the API. Whenever a game complete, the information of points collected send using API in XML to be displayed on scoreboard. This scoreboard is flash based application.

  Responsibilities : 

  • Maintain the existing API and ensure the points collected displayed correctly.
  • Develop myKad reader desktop application using C# ( .Net ) and export the data to excel file.

Project Title : Centralized Tripping Information System

  Employer : yUS Sdn. Bhd.

  Client : Tenaga Nasional Berhad

  Description : 

Centeralized Tripping Information System (CTIS) is an web based information system to record in event of electrical tripping. This application use by engineers to record their assessment; from reason of tripping up to cost to recover the damage.

This project is an upgrade to existing Web Application which is based on VB6 to .Net(C#). The system gathers input from engineer after assessing tripping incident. The system does certain calculation to summarized the inputs and compile its for reporting purpose.

  Responsibilities : 

  • Convert the existing module in VB6 to C#.
  • Develop report using Crystal Report 9. Task involve to create printer friendly layout.
  • Develop report editor allow user to input details about tripping incident and options to export to MS Word / PDF. The export function use HTML, CSS to render content which is MS Word / PDF friendly layout.
  • Develop Web Control to fasten the development process (re-usability).