namelogo.gif (4231 bytes) aboutme.gif (699 bytes) resume.gif (754 bytes) work.gif (746 bytes) school.gif (712 bytes) business.gif (712 bytes) hobbies.gif (715 bytes) bookmarks.gif (790 bytes) guestbook.gif (757 bytes) help.gif (726 bytes)
welcome.gif (813 bytes)
blank.gif (129 bytes)
headaboutme.gif (1383 bytes)
bhatti@plexobject.com
Shahzad Bhatti
Experience Profile Self-starter, highly analytical and creative with over seven years of experience in software design and development. Strongly skilled in designing and implementing large object-oriented and distributed systems using Java, C++, CORBA and object-oriented databases. Extensive knowledge in systems programming in UNIX and systems administration on UNIX and NT systems.
Experience 1998-present Parsons Transportation Group Chicago, IL

Senior Software Engineer

  • Evaluated operating systems and software such as CORBA, database for the Gateway system and selected operating systems for the server environment in the Gateway system.
  • Collaborated in analysis and design effort for the Gateway system. Led the design effort for designing persistence layer and message-oriented framework based on publisher/subscriber pattern. Used Objectory methodology and UML notations to design components in the Gateway system.
  • Mentored other team members and guided them in design and technical problems.
  • Designed Implemented message-oriented-middleware in Java using CORBA’s event service. Added several capabilities to the message-oriented framework such as quality of service, filtering and typed events.
  • Designed and Implemented a CORBA based persistence layer in C++ under Solaris 7 platform. The persistence layer provided interface between object-oriented Versant database and remote clients. Provided facility to automatically creation of objects and loading state from the database and automatically garbage collecting of CORBA objects.
  • Designed and implemented data structure library in C++ that are thread-safe. Coded inter-process-communication library using Posix APIs that provided object-oriented abstraction for mutexes, semaphores, reader/writers, condition variables, threads, etc.
  • Responsible for administering and supporting multiple Sun, Linux and NT servers. Responsible for configuring system software and application software. Responsible for routine maintenance, upgrade, troubleshooting, backup and user support.
1998-Present PlexObject Solutions, Inc. Schaumburg, IL

Contractor

  • Designed and wrote web pages using HTML/Javascript for Conduit Financial Company. Wrote Java applets to calculate mortgage payments and interest..
  • Designed and coded web pages using HTML/Javascript for CCSI Networking company. Used Java servlets and JDBC for storing customer information in the database.
  • Designed and coded web-based video inventory system in HTML, Javascript and Java servlets. Used JDBC to store data in the database and provided HTML based interface to interact with the database.
  • Conducted training classes in C++, Java and UNIX.
1997-Present College of Dupage Glen Ellyn, IL

Instructor

  • Taught introductory and advanced classes for C and C++ programming and object-oriented concepts.
1997-1998 Automated Concepts, Inc. Chicago, IL

Senior Programmer/Analyst

(1998-1998) TransUnion Corp. Chicago, IL

  • Worked as a contractor for developing applications in C/C++ under IBM SP2 AIX 4.2 system.
  • Designed and implemented distributed tape management system to manage and allocate tape drives attached to different nodes. Applied UNIX IPC services such as shared memory, semaphores, and wrote low level ioctl calls to interface with IBM 3490 and 6250 tape drives.
  • Designed and implemented graphical interface to the tape management system in C++ using X/Motif library.
  • Taught UNIX shell and Perl programming classes.

(1997-1998) Discovercard & Co.. Riverwoods, IL

  • Worked as a contractor for developing web applications in C/C++ under IBM RS/6000 AIX 4.2 system.
  • Designed and developed WEB/CGI applications and applets in C/C++ and Java that allow users to access accounts, view statements and other information through a WEB browser.
  • Designed and implemented graphical interfaces in HTML/JavaScript and Java that interacted with CGI programs written in C/C++ and Java Servlets. The interface programs used HTML/Forms and Java applets to interact with backend programs to provide to register applicants, display statements and other information for cardholders.
1996–1997 Fermi National Accelerator Lab. Batavia, IL

Computer Professional V

  • Responsible for maintaining and enhancing a data mining system that ran under Parallel Operation Environment on 16-node IBM SP2 and was written in C++ using MPL library.
  • Responsible for maintaining in-house software called "CANOPY" that ran on the home-built supercomputer called ACPMAPS. Enhanced that software to archive data on the robotic tape drives from the ACPMAPS System.
  • Responsible for administering a 602-node parallel computer called ACPMAPS System, which was built and designed by Fermilab. It was connected with a SGI Challenge server, where in-house software used to interface with the parallel system. Worked on trouble shooting and maintenance of the in-house management software (CANOPY) that ran on the ACPMAPS System.
  • Responsible for administering all servers in the group that consisted of three SGI Challenge, a Sun Sparc, two IBM RESPONSIBILITY/6000, and several SGI Indigo personal workstations. Responsibilities included trouble shooting systems, user support, system upgrade, network configuring, installing new machines, maintaining list services and email, upgrading disks.
  • Setup and department server to use as email server, NIS server, WEB server, file server and products server. Wrote several scripts in UNIX shell language and Perl to automate procedures for system monitoring, diagnostics, and backup. Tuned IRIX kernel to improve performance.
1994–1996 Metromail Corp. Lombard, IL

Application Analyst

  • Collaborated in a Re-Engineering project to redesign and rewrite a Merge/Purge product in C++ under UNIX platform. The Merge/Purge product was used to create a list of target customers for marketing purpose. It took a list of people and marketing rules as input and produced non-duplicate list of people that matched their geographical, demographical or other criteria.
  • Designed and wrote modules to perform standard address processing and name processing. Wrote algorithms to match strings based on phonetics. Designed and wrote programs to parse the selection rules.
  • Responsible for system administration and maintenance of NT, Solaris 2.5 and AIX 4.1 systems. Setup NFS, WEB Server and NIS on Solaris and AIX systems. Other responsibilities included trouble shooting, user support, systems upgrade, network configuring, installing new software, and backing up.
1993–1994 Metromail Corp. Lombard, IL

Application Programmer

  • Responsible for maintaining an on-line address and phone search and verification system on mainframe. Wrote new COBOL II and CICS programs to add new features and modified existing programs.
  • Collaborated in a Re-Engineering project to redesign the master files that stored all phone and address information in order to include information from more than one sources and remove duplicates.
1993–1993 Fermi National Accelerator Lab. Batavia, IL

Internship

  • Responsible for running programs to process experiment data and monitoring those jobs.
  • Responsible for writing programs in C, FORTRAN, Oracle SQL and shell languages under UNIX and VMS systems.
Education 1997–2000 Illinois Institute of Technology Chicago, IL
  • Doctor of Philosophy, Computer Science
  • G.P.A. 3.85/4.0
  • Summa Cum Laude.
1994–1996 Illinois Institute of Technology Chicago, IL
  • M.S. in Computer Science
  • G.P.A. 3.75/4.0
1990–1992 DeVryInstitute of Technology Chicago, IL
  • B.S. in Computer Information Systems
  • Graduated Summa Cum Laude.
1987–1989 Punjab University Lahore, Pakistan
  • Bachelor in Commerce
Certifications
  • Java Certification for Programmers JDK 1.11998
  • Advanced System Administration in Silicon Graphics IRIX 6.41997
Computer Skills
  • Operating Systems: AIX, BeOS, BSD, SunOS/Solaris, IRIX, OS/2, Windows NT/95/98, Linux, MVS-XA/ESA, VMS, OpenVMS, Digital UNIX.
  • OO Methodologies: Objectory, Booch, OMT.
  • Languages: C, C++, Java 2, UML, Perl, AWK, IBM Assembler, COBOL/CICS Pascal, JavaScript, SQL, HTML/DHTML, XSL/XML.
  • Middleware: CORBA, Java RMI, Voyager.
  • Database: Oracle, Sybase, Versant, ObjectStore, mSQL, Dbase.
  • APIs: JFC/Swing, JDBC, JavaBeans, JavaMail, JSDT, BSD Sockets, Motif/Xwindows, UNIX Kernel/Systems, HTTP/CGI, Java Servlets/Java Server Pages, JavaSpaces, Enterprise JavaBeans.
  • Source Code Management: CVS, PVCS, RCS/SCCS.
blank.gif (129 bytes)
blank.gif (129 bytes)
blank.gif (129 bytes)

Please send comments or suggestions to bhatti@plexobject.com.

About Me | Curriculum Vitae | Work | Research | Business | Hobbies | Bookmarks | Guest Book | Help