Showing posts with label Projects. Show all posts
Showing posts with label Projects. Show all posts

Saturday, December 1, 2012

Project - Enhancement on website to provide online application and facebook integration

On this story, we are going to enhance our current company website to support online application.  Within the application, we will correct client's personal information together with their Facebook authentication for further user information collection.

Requirements:
  1. Online application in a secured channel.
  2. Uploaded application and attached document needs to be secured.
  3. Collect Facebook authentication token.
  4. Access to submitted application from our internal staff in secure way.
What we are having now:
  1. The current website was design and created by a website design house.  Mainly static contents.
  2. We have an internal system which stores all client's sensitive information.
  3. We have register company domain and website is hosting on a shared hosting plan.  i.e. Many other outside domains are hosted together, sharing resources and IP.  This was fine at the moment since we only serves static information on our website.
  4. Website contents is managed by Modx.
  5. Design house will be responsible for creating new application form on our website.
  6. We will setup the environment for new website deployment and make sure the security of application data.
Considerations:
  1. Since our online application need to be secured, we needs https on application pages.
  2. Internal system should be separated from website for security concerns.
  3. Application data will be stored on hosting server database and file system.
  4. The application data on website should only be a temporary storage.  Once it's retrieved from our staff, it should be cleanup from website database.
  5. Application data should not be accessible by Design house personnel.  We should only provide minimal access for their deployment.  Once done, we should restrict their access.
  6. Access to application data on website should be granted only to IPs from office and internal system servers.
Things to do:
  1. Move web hosting to VPS so as to get a dedicated IP and server resource.
  2. Setup VPS and grant required access to design house for their deployment.
  3. Create access point on getting the Facebook authentication token and applications into our internal system.
Story daily:

  1. The original communication between us and design house was handle by another colleague who didn't say anything about online application security concerns.  No HTTPS was plan in the implementation.
  2. Raise security concern to product director.
  3. Agreed on we should make all application form secured.  Using HTTPS and SSL connections.
  4. Secure points: submission of form; Storage of application data on web server;  Secure retrieval of data from web server to our internal system.
  5. Coordinate with design house to make sure we are on the same picture and they know what they're going to do.
  6. Coordinate with developer on the way to get access Facebook token that will be stored on web site database.
  7. Apply VPS hosting plan.  Pay the bill, get access to VPS.
  8. Setup VPS for Modx deploy.
  9. ....

Monday, November 28, 2011

Financial ERP - In-house web-based system

Team
  • 2 developers
  • 2 outsourcing developers
  • 1 QA
Responsibilities:

  • Manage the whole SDLC
  • Gather user requirements
  • Create and prioritize requested features
  • System design
  • Implementation
  • Code reviews
  • Deployment
  • User demo
  • UAT
  • Maintenance
  • Bug fix
Development details:

  • Ruby on Rails
  • Macvim
  • Pivotal Tracker - Agile development
  • Unfuddle - Git source control
  • Apache
  • Capistrano
  • JQuery, CSS
  • Phusion Passenger
  • Selenium
  • Chef solo
  • Shell scripts
  • PostgreSQL
  • & more gems...

Saturday, April 17, 2010

Web service API - Rovi Cloud Service

http://developer.rovicorp.com/
(It's not so 'cloud' indeed but a web data service)

Team:
    > 20 developers (US + HK)
    > 5 QA (US + HK)

Responsibilities on backend data service support:
  • Feasibility studies
  • Prototyping
  • Implementation
  • Data caching - Memcached/db
  • Web Service APIs
  • API Explorer
Development details:

  • Microsoft .Net
  • Windows server 2008
  • Memcached/db servers
  • C#
  • ASP.NET
  • MS SQL Server
  • Scrum 
  • JIRA
  • Visual Studio 2008
  • CruiseControl.Net

Sunday, January 10, 2010

Meeting Room Reservation System

Team:
  • 1 Software Engineer
  • 1 Firmware Engineer
  • 1 QA Engineer
Responsibilities:
  • System design
  • Database design
  • Gather business requirements
  • Server implementation
  • UI implementation
  • Deployment
  • Maintenance
  • Project management
Features:
  • Used in Satellite office with 10+ meeting rooms.
  • Provides online meeting room reservation service.
  • Send confirmation, reminder emails.
  • Show schedules and current status on meeting room LCD display.
  • Realtime news and weather display.
Development Details:
  • Visual Studio
  • C#
  • ASPX
  • AJAX
  • JQuery
  • MySQL
  • CSUnit
  • SVN

Monday, June 29, 2009

SMS Advertising System

Team:
  • 2 Software Engineers
  • 1 QA Engineer
Responsibilities:
  • System design
  • Database design
  • Implementation
  • SMS server connection
  • Deployment
  • Maintenance
  • Project management
Features:
  • Supports 10K+ members.
  • Merchant advertisement submission.
  • Automatic sends advertisement SMS

Monday, December 8, 2008

Philips 10-feet TV-Guide

Team:
  • 2 Developers
Responsibilities:
  • UI implementation
Features:
  • 10-Feet TV-Guide on Philips TV
  • Map keys on remote control
Development Details:
  • Visual Studio
  • ASPX
  • AJAX
  • Javascript

Thursday, August 17, 2006

TV Listing Data Delivery Service System

Team:
  • 2 - 5 developers
  • 2 QA
Responsibilities:

  • Maintenance
  • Feature enhancement
  • Data pre-process backend
  • Data serialization
  • Data delivery backend
  • Operator front-end
  • Reader, packetizer implementation.
Development details:
  • Windows Server NT, 2003
  • C++, COM+
  • ASP
  • Oracle

Tuesday, September 20, 2005

Mobile TV-Guide System

Team:
  • 3 Software Engineers
  • QA Team
  • Outsource Vendor
Responsibilities:
  • Protocol design
  • System design
  • Database design
  • Gather features requirements
  • Implementation
  • Coordinate with vendor - mPortal
  • System optimization
  • System maintenance
  • Provide deployment packages
  • Platform migration
  • Manage development life cycle
  • Documentations
  • Field test and fine tuning
  • Setup production servers in Tulsa, US (1 x Load Balancer, 2 x Data Server, 2 x App Server)
Features:
  • Support US market (100K+ Subscribed users)
  • Mock service for Japan, Euro market.
  • Provide TV listings data on Mobile devices.
  • Stores user bookmarks on server.
  • Program recommendations.
  • Set SMS watch reminder to mobile.
  • Supports remote recording on home TV recorder.
  • Supports advertisement submission.
  • Connection to SlingBox.
  • Connection to Toshiba DVR.
Development Details:
  • Visual C++, Visual Studio
  • Windows NT, Server 2003
  • C++, C#
  • COM+
  • ASP, ASPX
  • Web Services
  • MS SQL Server
  • Oracle database
  • DOM parser
  • SOAP
  • Test-Driven Development
  • NUnit, CSUnit
  • Log4Net
  • XMLParser
  • Proprietary binary communication protocol.
  • J2ME
  • Nokia Phone, Emulator
  • Motorola Phone, Emulator
  • CVS
Field Tests:
  • CA, US (94103)
  • CES - LV, US
Remarks:
  • Business requirements comes from US team.
  • Handles US Daylight saving issues.

Friday, June 25, 2004

Japan Web G-Guide

Team:
  • 2 Software Engineers
  • 1 QA Engineer
Responsibilities:
  • Implementation
  • Documentations
Features:
  • Support Web G-Guide on Japan.
  • 10K+ Featured Recorders.
  • Provides TV listings data on web.
  • Supports remote TV recording.
  • Communicate with Panasonic servers.
Development Details:
  • Visual C++
  • Windows NT
  • COM+ - dlls to communicate with database, remote servers.
  • ASP - serve web UI
  • Cryptography - Crypto++
  • Oracle database - provide listings data
  • CVS

Tuesday, June 17, 2003

Research on Semantic Web

Team
  • 1 developer
Feature
  • Research project
Development Details
  • Java
  • MySQL
  • HTML
  • Javascript
  • Servlet
  • Apache web server
  • MVC

Wednesday, February 20, 2002

Document Management System

Team:
  • 2 Developers
Responsibilities:
  • Product design
  • Implementation
  • Documentations
Features:
  • Stores documents on intranet web based system
  • Support small~mid size company with 5 - 50 users.
  • Support viewing different document formats
  • Support markup on documents
  • Document version control
Development Details:
  • J2SE
  • Servlets
  • MySQL database
  • MS Source safe