Ehtisham Rasheed on Database Design

Answers to database design questions by Ehtisham Rasheed, Sialkot, Pakistan
Date: 3 January 2015

Please explain (or briefly describe) the general philosophy behind your database design approach.

     i first perform logical design on paper using ER-Diagram, perform normalization and then go to physical database design and remain successful each time with this approach... after each phase i'll contact the resource person and after their comments/confirmation i'll proceed

What is something you have seen done repeatedly in database design work done by others people which you find to be particularly annoying or detrimental?

     most other people start designing database directly with Access which will later create structural problems...

Given that you are database specialist, how does what do you while creating your database architecture save clients time and/or money?

     i'll first break down the whole project into parts and after completion of each part i'll get confirmation from the client... this saves lot of money for client and time for development...
     i can further explain this procedure during Skype session, if u need more clarification...

Where do you live?

     i live in Pakistan... my time zone is +5 GMT... normally i can manage my time to different time zone...

Briefly describe your pertinent work and/or educational background.

     i did my bachelors and masters in computer science... i've almost 4 years of development and 5 years teaching experience... currently im doing teaching in a public sector university of my country... im teaching databases and programming courses to undergraduate and graduate students... and in parallel im doing software development...

What are the industries you have the most experience working within?

     i've most experience with development and teaching...

Your rate is higher what other programmers and freelancers charge. How does what you do with database design save clients and companies money in the long run?

     my rates are not higher compared to persons with my skill set and portfolio at oDesk... my main preferences are client's satisfaction not money that's why i've high feedback ratings... i spend much time in paper work (mostly with database designing) so that development will take short time... this technique will reduces lot of updation/maintenance cost which ultimately have great impact on overall budget of client... i'll always available, even after ending the job, to any issue in my work normally without any additional cost...

You have special expertise in database design. How is what you do different from what a generalist computer programmer might do when it comes to creating a database back end?

     the main difference is that i didn't start physical database design at the beginning which is the root of major problems during back-end database connectivity and operations...

How is the database design work you do distinct from and also integrated with other aspects of overall software/technology systems?

     when overall structure of database is robust, it is easy to integrate with other software... the experience plays key role here... :)

Describe how the database design work you do now is similar to or different from "textbook database design," such as one might learn in college or read in a text book or software manual.

     practical database design is not much different than "text book database design"... there are many techniques in text book like DFD, ER-Diagram, Normalization etc... personally i found Normalization really great in practical work... and my emphasis is on Normalization before actual coding...

What RDBMS have you used extensively, or are at least somewhat familiar with based on first-hand experience?

     im comfortable with both Access and SQL Server...

Given an assignment to create a website from scratch for Company X, what RDBMS are you using? (website specs: principle table has 10,000 rows and will grow to 200,000 over next five years; admin back-end, general browsing, user logins; no more than 100 concurrent users)

     i know only basics of web development i.e. HTML, CSS and WordPress not comfortable with dynamic web development...

Aside from the database design, how much other development do you typically do? How much would you prefer to do?

     other than database design, im comfortable with Excel, Word, Outlook, PowerPoint all type of VBA, macro work... .NET (including VB.NET, C#) and mobile application development (Android and iPhone)... preferences given to MS Office work...

Table names: plural? singular? or something else? why?

     Tables names: Singular (recommended by experts)

Describe your relationship (if any) with WordPress?

     im comfortable with WordPress...

If you use stored procedures, how do you decide to use them or not use them? What are your alternatives?

     normally i don't use store procedures...

Why would a client who needs database design work done be making a wise move to hire you (if you're available)?

     it will be a wise decision to hire me because of following reasons:
      a) i've strong foundation in theoretical as well as practical aspects of database design and development
      b) i know how to get work done
      c) im available any time after the job for any improvements
      d) i've strong history/portfolio at oDesk more than 3000 hrs, more than 150 jobs, more than 4.8 feedback out of 5.0
      e) im multiskill person... can do WordPress, desktop development and all type of MS Office applications