project details2

14
Details of Projects Undertaken May 2010 - Present, PEsmart Science & Tech Co.,Ltd The most important part of my job is to design, implement and perfect a set of libraries and a Web framework, which mainly include: DataMge DataMge & DmReader: Significantly simplifying database programming and supports migrating between different RDBMS without modifying data access layer; WebSortTable: paging, sorting, Excel-like editing, custom calculation, modification logging, copy / paste; XmlTreeBuilder: build a tree structure from a XML file or by code; WebMenu: context menu and dropdown menu support, can integrate with any HTML element, create from XML file; WebTab: Tab-like web control; GraphLib Graphics object selection, export as image file, export MAPAREA coordinates, custom line style; Char type includes: line, bar, pie, scatterplot, etc.

Upload: frank-yao

Post on 08-Apr-2017

32 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Project Details2

Details of Projects Undertaken

May 2010 - Present, PEsmart Science & Tech Co.,LtdThe most important part of my job is to design, implement and perfect a set of libraries and a Web framework, which mainly include:DataMge DataMge & DmReader: Significantly simplifying database programming and supports

migrating between different RDBMS without modifying data access layer; WebSortTable: paging, sorting, Excel-like editing, custom calculation, modification

logging, copy / paste; XmlTreeBuilder: build a tree structure from a XML file or by code; WebMenu: context menu and dropdown menu support, can integrate with any HTML

element, create from XML file; WebTab: Tab-like web control;

GraphLib Graphics object selection, export as image file, export MAPAREA coordinates,

custom line style; Char type includes: line, bar, pie, scatterplot, etc.

Web Framework Creating a custom Web UI (usually includes left/right tree, context menu, dropdown

menu, toolbar etc.) from XML files in accord with user’s specific assigned privileges. Based on Microsoft Windows Workflow Foundation, extend to support persistence to

Oracle, State-Action XML configuration.

Technologies: C++,C#, ASP.NET, .Net Framework, JavaScript / Ajax / CSS / HTML / DHTMLL, Oracle, SqlServer.

1 Jun 2000 – May 2010, OilDigital SunShine Science & Tech Co.,Ltd

Some projects took several years, and caused overlapping.

1. ProjectDB, Jul 2008 – Aug 2009, Team leaderThis project is to provide the data access layer for LEAD software system of CPL (CNPC Logging Company, CNPC – China National Petroleum Company) which requires to be OS-independent and smooth switching between different DBMS (the current version supports Oracle and MySQL).

Duties:

Page 2: Project Details2

System analysis and design, database design; Development of the key stored procedures, functions and triggers; Design and implementation of security authentication subsystem which supports user-

defined roles; for the sensitive nature of well logging data, it requires very high security level, the most complex part involves the hierarchical data access control.

Designed the mechanism for switching between different DBMS;

Related Technologies & Tools: C++, Oracle9i / MySQL5.0, STL, OTL(Oracle, ODBC and DB2-CLI Template Library), XML, MS VC2003, PowerDesign, SVN, Windows2003 / XP.

2. GeoMaster Framework, Oct 2005 – May 2010, DesignerGeoMaster is the company’s most important software suite aimed at providing a tool for geologists which involves very complex 2D-vector, heavily-interactive graphics, this framework provides the basic components for the tools in this suite, and only UI is coupled with MFC.

Duties: System analysis, architecture design and system design; Design and implementation of the following modules: Print and Print Preview (which

supports large size graphics, like 3m*3m), Serialization, graphics cache, Data Access Helper (DBMS switching support), Software Encryption (software key and hardware key), Gradient Color Selection and Customization;

Design and implementation of Advanced Line Style component which allows user to define any complex line styles with the combination of five basic line styles: simple line, text line, shape line, digit line and wave line;

Designed the basic interfaces for application object, windows object, graphics object, command object and tool object;

Designed the register mechanism for dynamically loading the graphics modules, menu items and editing tools;

Designed the XML for lithology symbols description; Developed the child window with gauge frames;

Technologies: C++, STL, GDI / GDI+, MFC, SqlServer2k / Access, ADO, Multithread, Design Pattern, MS VC2003, CVS, Windows2003 / XP.

3. GeoSeismicRT, Mar 2008 –May 2010, Team leaderOne of the tools in GeoMaster, which parses SegY file, displays the 2D seismic profile and the horizons, faults and well trajectories that project on the profile, the well trajectories can update with the real-time WITSML data.

Duties: System analysis and design; Parsed SegY file which could be larger than 2GB; Development of the core graphics classes: CDrawGather which is the top parent

graphics object that controls the complex interaction with its child objects; CDrawSeisLine which is the abstract base class of various line-like graphics classes and provides rich line editing functions;

Developed the high efficient gradient display module for large grid data;

Page 3: Project Details2

Design and implementation of the inter-process communication mechanism with GeoMapView;

Technologies: C++, STL, GDI / GDI+, MFC, SqlServer2k / Access, ADO, MS VC2003, CVS, Windows2003 / XP.

4. AbrReport1.0, Sep 2006 – Dec 2006, Team leader5. TicketSystem, Jan 2005 – May 2005, Team leaderAbrReport (abroad project management system) and TicketSystem (airline tickets management system) were the commissioned projects from The Department of Foreign Affairs Management of CNPC. Both involved the complex approval processes and used the common components from OPRS.

Duties: System analysis and design, database design; Design and implementation of the Approval Process; Developed the web UI frames which can vary with different user roles;

Technologies: C#, ASP.NET, JavaScript, Ajax, SqlServer2000, PowerDesign, MS VS2005, CVS, Windows2003 / XP

6. GeoMapView, Oct 2006 – May 2007, Team leaderOne of the tools in GeoMaster, used to create contour map, it supports multi-layers graphics, complex contour line editing functions (deleting, adding control points, splitting and merging lines etc.).

Duties: System analysis and design; Design and implementation of the plug-in interface for loading various format data

files that used to create contour map; Development of plug-in mechanism; Development of the core graphics classes: CDrawContour and CDrawContourLine; Designed the core interfaces: IContourChild, IMapChild which are the main interfaces

for interaction between parent object and child objects; Development of the line editing functions which support redo / undo (no levels

limited), copy / cut / paste;

Technologies: C++, STL, GDI / GDI+, MFC, SqlServer2k / Access, ADO, MS VC2003, CVS, Windows2003 / XP.

7. InjectSys, Sep 2006 – Dec 2006, Team leaderThis project is used for simulation and optimization of the water injection pipe network in oilfield, which also includes pipe network graphics modeling and production data management.

Duties: System analysis and design, database design; Sorting out and optimizing the simulation and optimization algorithm from an old C++

Builder program;

Page 4: Project Details2

Technologies: C++, STL, GDI+, MFC, Access, ADO, MS VC2003, C++ Builder6.0, CVS, Windows2003 / XP.

8. GeoModel1.0, Jun 2003 – Aug 2005, Team leaderIt’s a 3D oil reservoir geological modeling software which includes data loading and management, data preprocessing, grid modeling, 2D vector graphics and 3D grid data displaying with OpenGL.

Duties: System analysis and design, database design; Design and implementation of the 3D OpenGL graphics subsystem which constitutes

the basis of the later versions; it supports Move, Rotate, Zoom, Grid Cutting, Lighting, 3D vector image export etc.;

Design and implementation of the unified interface for loading the various format data into a grid control and saving data into the DB;

Developed the 2D vector graphics objects that are used for data quality control and data preprocessing;

Extended a grid control to support formula editing and interacting with the 2D graphics objects;

Design and implementation of the modeling flow, including the communication with the modeling console processes in GSLIB;

Development of the two common components GenFunctions and GeoExt that are still part of GeoMaster FrameWork;

Technologies: C++, STL, GDI, OpenGL, MFC, SqlServer2k, ADO, MS VC2003, SourceSafe, Windows2k / 2003.

9. iGuarder, Oct 2002 –Oct 2004, Team leaderThis data filtering software comprises: ScreenGuarder which intercepts the screen text by hooking the windows text APIs (TextOutA, ExtTextOutW etc.), and processes with a keywords-based algorithm; IEGuarder which is an IE plug-in (browser helper object), filters websites by an URL database and keywords-based algorithm. Stability, efficiency and minimum memory usage are the top priorities of this product, and also it must be able to update online automatically, auto run and can’t be terminated by unauthorized users. All this critical requirements were finally met. The core modules were programmed in C. The development of this product greatly strengthened my understanding of windows kernel programming, system security and efficiency.

Duties: System analysis and design; Developed the hooking DLLs and respective processes both for windows2k and

windows9x, solved the problems encountered in hooking 16bit APIs under windows9x;

Developed the IE plug-in using ATL; Design and implementation of security modules (anti-delete, anti-termination etc.); Designed and developed the sever and client programs for updating online; Designed and developed the Content Identification algorithm base on keywords; Design and implementation of encryption of keywords & URL data file using RSA,

Page 5: Project Details2

and the tool to manage it; Design and implementation of the communication mechanism between different

processes and threads;

Technologies: C / C++, STL, ATL, MFC, Socket, Multithread, DLL Hooking, RSA encryption, MS VC6, SourceSafe, WindowsXP / 2k / 9x.

10. OPRS, Jul 2002 –May 2010, Team leaderOPRS (Optimization of pump and rod system) is to provide a design and management platform for oil engineers, which includes well data management, analysis and diagnosis of the working state of pumping well, simulation and optimization of the pumping system efficiency etc.

Duties: System analysis and design, database design; Design and development of multi-level department management module, security

authentication module; Design and developed the DataBridge which could import data from different types of

databases by configuration; Design and implementation of the algorithm provided by commissioning party; Design and implementation of a web UI frame entirely based on XML file; Designed and developed the common components that provide basic interfaces for

accessing database, graphics classes and some web controls.

Technologies: C#, ASP.NET, JavaScript, Ajax, Oracle9i, .Net Framework, MS VS 2003 / 2005, SourceSafe, CVS, WindowsXP / 2003 / 2k.

11. CMINFO, Mar 2001 – Jul 2002, DeveloperA production data reporting system developed for Oil & Gas Refining & Marketing Company of PetroChina.

Duties: System analysis and design, database design; Design and implementation of Report Builder (a COM component) which gets the

configured data from the database and creates the data input and view pages for various format reports;

Developed the Advanced Query COM component which builds the SQL based on the user’s selection and shows the query result, it supports cross-table query;

Developed the Data Statistic COM component; Developed the HtmlToOffice COM component which converts the web pages into

Word or Excel documents; Developed the FileUpload COM component (large file supports) which uploads Excel

files, reads and stores the data in the DB; Developed the JavaScript component which saves the reports data in the cookies and

auto-fill on the data enter pages;

Technologies: ASP, JavaScript, VB, COM / COM+, SqlServer2000, MS Visual InterDev, SourceSafe, Windows2k.

Page 6: Project Details2

12. Financial News Management subsystem, Jun 2000 - Aug 2000, DeveloperA commissioned project developed for www.263.net.

Duties: Analysis and design the tables for news management; Developed the news management subsystem; Developed the common functions for the team;

Technologies: C, CGI, Informix, Linux, HTML, JavaScript, CSS.

15 Jul 1996 - 1 Jun 2000, Software Engineer, Oil Production Technology Research Institute of PetroChina HuaBei Oilfield Company

Duties: Design and implementation of the software for injection well flow data measurement

device; including data acquisition through RS232, drawing various types of graphics and data management;

Development of Injection Well Production Data Management System; Maintenance and upgrading the Pumping Rod Optimization System; On-site technical support for well and injection well production logging. Maintenance of computer and network equipment; Computer basic knowledge and operation skills training for internal staffs;

Technologies: C / C++ / Visual Basic / FoxPro; COM / ActiveX, MFC, STL, DAO / ADO; SqlServer / Access / FoxPro; VC1.5 – 6.0, VB3.0 – 6.0, Visual FoxPro WindowsNT4.0 / 3.2 / 95 / 98 / DOS;

Page 7: Project Details2

Screen shots

Some screen shots from my work.

Page 8: Project Details2
Page 9: Project Details2
Page 10: Project Details2
Page 11: Project Details2