Talha Obaid

 

http://www.talhaobaid.com

talhaobaid@gmail.com

Summary

Hold 5.5 years of extensive hands-on professional software analysis, design and implementation experience of software industry. Currently working at Embedded Systems Division of Mentor Graphics for the last 5 years. Graduate with honors from University of Engineering and Technology, Lahore, Pakistan having Computer Science as major. During my software development career I participated in the development of several projects through complete development life cycle. Developed strong leadership and communication skills both verbal as well as written. An experienced team player with excellent interpersonal skills who has the ability to coordinate and drive projects under pressure.

Professional skills                                                                                

Languages

·     Java, C/C++, Microsoft VB 6.0

Technologies

·     Java: Java SE, SWING, AWT, JNI, JAVA3D, JMF, JavaComm, JAI, JDBC, JSP, JavaBeans, Java Servlet

·     Eclipse (Java based): JDT, JFACE, SWT, GEF, EMF, WTP, RCP, Equinox

Software

·     IDE: Eclipse Framework, Microsoft Visual Basic 6.0/.NET, Microsoft Visual C++ 6.0/.NET

·     Database: Microsoft SQL Server 6.0/7.0/2005, Oracle 8.0/8.5, MySQL 4.1

·     Platform: Microsoft Windows 2000/XP, Redhat Linux 6.2/7.0/FC3

Architecture

·     Instruction Set Architectures: ARM, ColdFire, 68K, x86

Experience                                                                                               

technical Lead                                                                                       apr 2008-present

Senior software development engineer                                  jul 2006 - mar 2008

Softwre Development engineer                                                   Mar 2004 - jul 2006

Mentor Graphics Pakistan Development (Pvt.) Limited

(A Corporate R&D site of Mentor Graphics Corporation, USA. http://www.mentor.com)

 

Working as Technical Lead in the Inflexion Core group at Mentor Graphics Embedded Systems Division. Participated in the development of following projects:

 

Inflexion Platform UI Designer

Contributing to the development of Inflexion Platform UI Designer. It’s an IDE whose GUI is developed in Java over Eclipse Framework. However the engine-side is developed in C/C++.

http://www.mentor.com/products/embedded_software/application_platform/inflexion/how_it_works.cfm

 

UI Designer:

Description: UI Designer; enables the rapid creation of visually rich and compelling user interfaces (UIs) for consumer electronic devices such as mobile phones and personal media players. It’s an XML-based environment for creating, customizing and testing new UI designs on a Windows PC.

Technology: Java, Eclipse Framework

Responsibility: Participated in the development of this product from SRS, to first prototype and later through 1.0 and ahead. Develop the GUI in Java over Eclipse Framework of the product and its significant editors. Incorporated maximum ease of usability and provided full drag-and-drop UI editing capability. Enabled complete UI designs to be produced without any need to resort to direct editing of XML. Simplified the process of producing new UI designs and simulated on-the-fly showing preview, all within the same environment. Harnessed the developed IDE to fulfill the WYSIWYG feature.

 

UI Packager:

Description: UI Packager; is responsible to convert the developed UI design project using UI Designer into its deployable form. It is developed in C/C++.

Technology: C/C++ and JNI

Responsibility: Maintained the UI Packager product and generated specific source files to be deployed on an embedded target on which the UI will be viewed and used. Improved error reporting and feedback logging within the packager.

 

Also worked with Tools group which is responsible for developing tools for embedded software development.

 

EDGE Debugger

Contributed to the development of EDGE Debugger, including feature enhancement and defect fixing. It includes instruction decoders, transports, call module and simulator. The GUI is developed in Java over Eclipse Framework, whereas the Debugger Engine is developed in C/C++.

http://www.mentor.com/products/embedded_software/development_tools/dev_suite/debugger/index.cfm

 

Implemented Support for ARM Cortex-M3, Cortex-A8 & ARM1156 in EDGE Debugger:

Description: Cortex is a new processor family from ARM and M3 is an embedded microcontroller-profiled processor. ARM1156 is a processor from ARM11 family. Both support Thumb-2 i.e. the latest instruction set from ARM.

Technology: C/C++

Responsibility: Created SRS to implementation. Added Disassembler, Instruction Decoder, Call Module and Transport Module within EDGE Engine.

 

Implemented Disassembly Support for Freescale’s ColdFire and 68K Instructions in EDGE Debugger:

Description: Disassembler; A debugger component which is able to translate machine code into the equivalent assembly language coding, and able to identify the components of each instruction by type (mnemonic, register, operand, etc.).

Technology: C/C++

Responsibility: Developed Core Module's Disassembler for both ColdFire and 68K, to be incorporated within EDGE Debugger. Incorporated resolution of effective address decoding and values to known symbols, when available (including labels and function names). Ensured that the developed disassembler is able to identify the addressing mode used for an operand and show that in place of a value, if needed, including Memory Read Ahead mechanism for the same instruction, if required. Support for variable length MOVE instructions, MAC/EMAC instruction, different Instruction Set Architectures i.e. ISA_A, ISA_A+, ISA_B, ISA_C instructions and Floating point unit instructions was also incorporated.

Developed a test bench application to verify the output of disassembler successfully escape reserved and unused op-codes and produce the desired by-the-manual assembly source.

 

EDGE Profiler:

Took part in developing GUI for EDGE Profiler, which is an integral part of EDGE.

http://www.mentor.com/products/embedded_software/development_tools/dev_suite/profiler/index.cfm

 

Description: Profiler is mainly composed of a purpose-built Graph Control used for analyzing profiled data from hardware. Different RTOS events are chosen before hand and accumulated afterwards taking input from hardware using RS232 interface. The profiled events are than plotted over time axis and analyzed within a Graph Viewer.

Technology: Java and Eclipse Framework

Responsibility: Implemented support for drawing profiled event over time, Zooming In/Out, ZoomBox, Dynamic Descriptive Tooltip, Pagination, Grid lines snapping to event points, Bi-directional Scrolling in Zoomed Content and Horizontal Scrolling within Graph Control.

 

Also worked with RTOS Group, which is responsible for providing Real-Time Operating System Support.

 

Nucleus PLUS AC Support for NIOS II IDE 5.0

Incorporated support for Nucleus PLUS AC: Mentor Graphics RTOS, in NIOS II IDE 5.0 from Altera.

 

Description: The added support involved generating configured source files and designing dialogs for configuration. Observing Nucleus PLUS RTOS coding standards, source files for Nucleus AC (Auto Configurable) are generated dynamically i.e., C header files containing the Nucleus Product configuration Defines, Assembly file containing the Defines required by assembly files, C header files containing the Defines related with UART & Ethernet, POSIX support files, and Linker command file.

Technology: Java and Eclipse Framework

Responsibility: Designed & developed plug-in to be integrated harmoniously with Altera NIOS-II IDE 5.0 which is based on Eclipse Framework. Developed dialogs within the plug-in which can be used to configure/generate source files for Nucleus PLUS RTOS components like UART, ETHERNET, NET & POSIX on the fly.

 

Senior Research Associate                                                               May 2003-Mar 2004

University of Engineering & Technology Lahore, Pakistan

 

My job as Senior Research Associate at “Communication Systems Lab, Research Center” was to lead a team of software engineers and to perform analysis, designing and implementation of following research oriented projects of industry.

 

Motion Detection Server

Description: The Security System to monitor the stream coming from several cameras. It was implemented using JMF technology. The video obtained from tuner card can be transmitted over the network using RTP Technology. It also detects motion and sounds alarm as well.

Technology: JMF 2.1.1, Java Communication API, Java Advanced Imaging API

Responsibility: Developed this project exclusively.

Site: Provincial Assembly of Punjab http://www.punjab.gov.pk/

 

Nastaliq Unicode Urdu Editor

Description: Nastaliq Unicode Editor is a Unicode based full featured editor for editing Urdu language.

Technology: Java SWING, JBuilder 9.0, FontLab, Macromedia FontoGrapher

Responsibility: Responsible for research, analysis and overall development of a Word Processor for Urdu Language. Well-tried the application by issuing valid and invalid ligature input sequences.

Site: Provincial Assembly of Punjab http://www.punjab.gov.pk/

 

Data Reader

Description: This product was developed exclusively for PhD students of Mechanical Engineering Dept. GIK Institute. The Software is connected to a Strain Meter which transmits the reading obtained from various parts of pipe in which some fuel is injected and strain is applied. It obtains the data using Serial RS232 Interface. Finally after the data is accumulated using multi-threading, it is formatted in the form of Excel sheet using OLE Automation.

Technology: Visual C++ (Multithreading & OLE Automation)

Responsibility: Developed this software entirely from overall design to implementation and deployment. Harnessed the software using offsite purpose built hardware data generators.

Site: GIK Institute http://www.giki.edu.pk

 

Lecturer                                                                                                    Aug 2003-Mar 2004

University of Engineering & Technology Lahore, Pakistan

·     Taught as a Lecturer at Department of Computer Science and Engineering

·     Taught Digital Signal & Image Processing to final year graduate students at Bachelor level having full credit hours course weight

·               Conducted Lab of Design and Analysis of Algorithms

Compiled and marked exams; assigned and evaluated assignments for the afore-mentioned courses. Also handled the following project while serving as Lecturer:

 

SCHMIDTS KAPCO

Description: Schmidts is software that runs to monitor the turbines in KAPCO power plant. It logs the details of various parts of the plant functioning in real time.  This software was supposed to operate virtually for-ever. Also it has the capability to generate dynamic reports.

Technology: Visual C++ 6.0, Visual Basic 6.0, MySQL 4.1

Responsibility: Contributed in Analyzing and Overall implementation of a highly robust real-time solution. Trialed the application by executing a cold-run offsite using custom made real-time dongle for valid serial input stream to imitate real world situation.

Site: KAPCO Kott Addu Multan http://www.kapco.com.pk/

 

Software Engineer Intern                                                               Feb 2000-Mar 2002

Lahore Software (Pvt.) Limited

My job as a Software Engineer was to contribute actively in the Office Automation projects being developed at the company. It was a part time job. Happened to fully participate in the Development Cycle of following projects:

 

Kampus2000

Description: An integrated tool for maintaining information about school activities and student records. It was designed with efficient search support and user friendly interface.

Technology: Visual Basic 6.0, SQL Server 7.0, Crystal Reports 8.0, Erwin 3.5

Responsibility: Executed the job as Software Engineer/System Analyst to analyze the system and thus contributing in its overall development. Examined the application to admit valid input from the user.

Site: LGS Defense

 

SmarTill2002

Description: System that maintains the inventory procedures and daily tasks of an environment running inventory and stock management of any volume.

Technology: Visual Basic 6.0, SQL Server 7.0, Crystal Reports 8.0

Responsibility: Served as part of performance tuning team as well as quality assurance staff. Involved in making it more flexible and more efficient.

Site: Tes-Mart Defense

 

Academics                                                                                                

B Sc (HONS) Computer Science                                                          Jan 1999-May 2003

University of Engineering & Technology Lahore, Pakistan

·     Grade A with HONOURS

 

Did my Graduation from “Dept of Computer Science & Engineering”. Lead my Final Year Project as Team Lead explained below:

 

TISRS: Text Independent Speaker Recognition System

Description: It was my Final year Project in UET. TISRS includes Speaker Recognition and Verification. It was a research oriented project and the focus was on Human Biometrics for Speaker Recognition.

Technology: Microsoft’s VB.NET, Access 2002, Visio 2002

Responsibility: Various speaker specific biometric cues were discovered, researched and implemented. Formants, slopes between adjacent formants, pauses and pitch was extracted and an intelligent system was trained on a unique set of speakers and later identified individually among the masses.

 

Recognitions                                                                                          

·     Awarded Mentor Graphics stock options.

·     Numerously acknowledged on dedication, commitment and performance from managers onshore.

·     Selected after the technical evaluation of 200 teams as Director of Company under the administration of Pakistan Software Export Board PSEB Lahore.

·     Selected as a Lecturer at Computer Science Dept. UET from a group of top merit students.

·     Involved in consulting various Educational Projects in LACAS.

·     Experienced commercial Consulting of Projects on many installations like Provincial Assembly of Punjab, KAPCO, GIKI, Tes-Mart etc.

Trainings                                                                                                 

·     Attended on-line training of Mentor's Standards of Business Conduct—Overview 2008

·     Attended on-site lecture series on the topic of Object Oriented Analysis & Design 2006

·     Attended training on “Effective Communication Skills” from Pakistan Institute of Management 2006

·     Attended on-site lecture series on the topic of Advanced Computer Architecture 2006

·     Attended on-site presentation sessions on Advanced C++ topics 2005

·     Attended course for Redhat Linux Administration 2003

References                                                                                              

Domestic and international references can be furnished on request.