Social Icons

twitterfacebookgoogle pluslinkedinrss feedemail
Showing posts with label Microsoft SQL Server. Show all posts
Showing posts with label Microsoft SQL Server. Show all posts

Saturday, April 9, 2011

New Interview Questions for Senior Software Engineers

New Interview Questions for Senior Software Engineers
  • What is something substantive that you've done to improve as a developer in your career?
  • Would you call yourself a craftsman (craftsperson) and what does that word mean to you?
  • Implement a using on .
  • What is SOLID?
  • Why is the Single Responsibility Principle important?
  • What is Inversion of Control? How does that relate to dependency injection?
  • How does a 3 tier application differ from a 2 tier one?
  • Why are interfaces important?
  • What is the Repository pattern? The Factory Pattern? Why are patterns important?
  • What are some examples of anti-patterns?
  • Who are the Gang of Four? Why should you care?
  • How do the MVP, MVC, and MVVM patterns relate? When are they appropriate?
  • Explain the concept of Separation of Concerns and it's pros and cons.
  • Name three primary attributes of object-oriented design. Describe what they mean and why they're important.
  • Describe a pattern that is NOT the Factory Pattern? How is it used and when?
  • You have just been put in charge of a legacy code project with maintainability problems. What kind of things would you look to improve to get the project on a stable footing?
  • Show me a portfolio of all the applications you worked on, and tell me how you contributed to design them.
  • What are some alternate ways to store data other than a relational database? Why would you do that, and what are the trade-offs?
  • Explain the concept of convention over configuration, and talk about an example of convention over configuration you have seen in the wild.
  • Explain the differences between stateless and stateful systems, and impacts of state on parallelism.
  • Discuss the differences between Mocks and Stubs/Fakes and where you might use them (answers aren't that important here, just the discussion that would ensue).
  • Discuss the concept of YAGNI and explain something you did recently that adhered to this practice.
  • Explain what is meant by a sandbox, why you would use one, and identify examples of sandboxes in the wild.
  • Concurrency
    • What's the difference between Locking and Lockless (Optimistic and Pessimistic) concurrency models?
    • What kinds of problems can you hit with locking model? And a lockless model?
    • What trade offs do you have for resource contention?
    • How might a task-based model differ from a threaded model?
    • What's the difference between asynchrony and concurrency?
  • Are you still writing code? Do you love it?
  • You've just been assigned to a project in a new technology how would you get started?
  • How does the addition of Service Orientation change systems? When is it appropriate to use?
  • What do you do to stay abreast of the latest technologies and tools?
  • What is the difference between "set" logic, and "procedural" logic. When would you use each one and why?
  • What Source Control systems have you worked with?
  • What is Continuous Integration?  Have you used it and why is it important?
  • Describe a software development life cycle that you've managed.
  • How do you react to people criticizing your code/documents?
  • Whose blogs or podcasts do you follow? Do you blog or podcast?
  • Tell me about some of your hobby projects that you've written in your off time.
  • What is the last programming book you read?
  • Describe, in as much detail as you think is relevant, as deeply as you can, what happens when I type "cnn.com" into a browser and press "Go".
  • Describe the structure and contents of a design document, or a set of design documents, for a multi-tiered web application.
  • What's so great about ?
  • How can you stop your DBA from making off with a list of your users’ passwords?
  • What do you do when you get stuck with a problem you can't solve?
  • If your database was under a lot of strain, what are the first few things you might consider to speed it up?
  • What is SQL injection?
  • What's the difference between unit test and integration test?
  • Tell me about 3 times you failed.
  • What is Refactoring ? Have you used it and it is important? Name three common refactorings.
  • You have two computers, and you want to get data from one to the other. How could you do it?
  • Left to your own devices, what would you create?
  • Given Time, Cost, Client satisfaction and Best Practices, how will you prioritize them for a project you are working on? Explain why.
  • What's the difference between a web server, web farm and web garden? How would your web application need to change for each?
  • What value do daily builds, automated testing, and peer reviews add to a project? What disadvantages are there?
  • What elements of OO design are most prone to abuse? How would you mitigate that?
  • When do you know your code is ready for production?
  • What's YAGNI? Is this list of questions an example?
  • Describe to me some bad code you've read or inherited lately.
Your thoughts? I'll add good questions from the comments throughout the day.

Thursday, December 2, 2010

Introduction to Microsoft SQL Server : Microsoft SQL Server Setup


Microsoft SQL Server is an application used to create computer databases for the Microsoft Windows family of server operating systems. Microsoft SQL Server provides an environment used to generate databases that can be accessed from workstations, the Internet, or other media such as a personal digital assistant (PDA).

To follow our lessons, you must have access to a computer in which Microsoft SQL Server 2008 is installed. To start, you must have a computer that runs an appropriate operating system. If you are just learning, you can use a computer that runs Microsoft Windows XP Professional, Microsoft Windows Vista, Microsoft Windows 7 (Professional or Ultimate), Microsoft Windows Server 2003, or Microsoft Windows Server 2008.
Author Note
For our lessons, we will work from Microsoft Windows 7 (Professional and Ultimate) and a server. To get the server together:
  • We purchased a Dell PowerEdge T105 (from the http://www.dell.com/ web site) with an AMD Athlon (tm) Dual Core Processor 4450B 2.30 GHz with 4.00 GB memory and 2 hard drives of 160GB each (it had cost us roughly $320)
  • We ordered a trial copy of Windows Small Business Server 2008 from Microsoft (free)
  • We installed the server operating system (http://www.functionx.com/networking/sbs2008.htm)
  • In the next lesson, we will see how to install Microsoft SQL Server 2008
Before installing Microsoft SQL Server 2008, make sure you have installed all service packs on your operating system.
Introduction to Security
One of the main concerns of a database is security, and this is central to Microsoft SQL Server. Security is exercised at different levels: in the room where the computer(s) is(are) located (the computer(s) that hold(s) the server application (Microsoft SQL Server) and the computer(s) that will use(s) the databases (clients)) and the people who will use all these resources.
When it comes to the room that houses the computer on which you will install Microsoft SQL Server, you should make sure the room can be locked at any time and only a few selected people have access to it. For maximum security, you should also put the computer in a locked closet.
Creating a User Account in Microsoft Windows XP
  1. Start Control Panel
  2. Click User Accounts:

    Control Panel
  3. Click Create New User:

    User Accounts
  4. Type the name for the new account:

    User Accounts
  5. Click Next.
    Make sure the Computer Administrator radio button is selected

    User Accounts
  6. Click Create Account
  7. To assign a password to an account, in the User Account, click the account you created
  8. Click Create A Password

    User Accounts
  9. In the Type A New Password text box, type Password1 and press Tab
  10. Type Password1 to confirm and type anything in the last text box:

    User Accounts
  11. Click Create Password
Creating a User Account in Microsoft Windows 7
  1. Start Control Panel
  2. Click User Accounts

    Control Panel: User Accounts
  3. Click User Accounts again
  4. Click Manage Accounts

    User Accounts

    User Accounts
  5. Click Advanced
  6. Click Advanced again
  7. In the left frame, right-click Users and click New User...:

    Control Panel: User Accounts
  8. Enter the user name, the full name, an optional description, and a password twice:

    User Accounts
  9. Click Create
  10. Click OK
Creating an Account in Microsoft Windows Server 2003 or 2008
  1. Log in to Microsoft Windows Server 2003 or 3008 with an account that can create accounts
  2. To create an account in Microsoft Windows Server 2003 or 2008, on the taskbar, click Start -> Administrative Tools -> Active Directory Users and Computers.
    If you receive a message box, click Continue
  3. In the left frame, expand the node of the domain if necessary.
    Right-click Users, position the mouse on New, and click User

    Active Directory Users and Computers
  4. Enter the first name, the optional initial (you can skip it), the last name, and the user name (the domain name will be different from yours)

    New User
  5. Click Next
  6. Type the password and press Tab
  7. Type the password again and accept the options in the check boxes

    New User
  8. Click Next (in the summary, the domain name will be different from yours)

    New User
  9. Read the summary in the last page of the wizard and click Finish
Practical LearningPractical Learning: Creating Accounts
  1. Depending of your operating system, create the following accounts that we will use in our lessons:
     
Microsoft Windows Server User (Logon) Name Windows XP-7Password 
First NameInitialsLast NameFull Name
PatriciaHKatts pkatts Patricia H KattsPassword1
Orlando Perezoperez Orlando PerezPassword1 
Gertrude DMonaygdmonay Gertrude Danielle Monay Password1
RaymondKoumarkouma Ramond A Kouma Password1

  1. After creating the accounts, Click Close
  2. Click Start -> Switch User

    Switch User

    Switch User
  3. One after the other, log in as each of the above user accounts and provide the password as Password1
  4. When asked to provide the new password, type one you like, otherwise, use P@ssword1
  5. Re-log in to the computer or server using the Administrator account
 

 

Security Principals
A security principal is a person or an object that needs access to a database. The security principal can be considered as one entity or as a group of entities:
Security Principals
This means that a security principal can be considered as a lone entity or as
 member of a group. For example, a person who accesses a database can be
considered an entity. A group of people who perform the same job and have
been give the same accecss(s) to a database (or to an object of a database) is
considered a collection.
Creating a Group in Microsoft Windows 7:
(We didn't have access to Microsoft Windows XP when writing this lesson)
  1. Start Control Panel
  2. Click User Accounts

    Control Panel: User Accounts
  3. Click User Accounts again
  4. Click Manage Accounts

    User Accounts
  5. Click Advanced
  6. Click Advanced again
  7. In the left frame, right-click Groups and click New Group...

    Control Panel: User Accounts
  8. Enter the desired name of the group and an optional description

    Control Panel: User Accounts
  9. You can click Create
  10. When creating a group or after creating it, to make it useful, you should (must) add one or more users to it. If you have created a group and had closed the dialog box already, open it using the previous steps.
    To add a user, click Add...
  11. This would open a dialog box. First check the location. If it is not displaying the right computer, click Locations... In the Locations dialog box, if you will access the database locally, select the name of the computer and click OK.
    In the bottom text box, type the (complete) username of the person you want to add

    Select Users

    Select Users
  12. Click Check Names

    Select Users

    Select Users
  13. Once the name has been resolved, click OK.
    You can either add one name at a time or add the other names one after another
Creating a Group in Microsoft Windows Server 2003 - 2008:
  1. Open the Active Directory Users and Computers
  2.  Right-click Users -> New -> Group

    Active Directory Users and Computers
  3. Type the desired name for the group and check the options of the radio buttons

    New Group
  4. After providing and checking the options, click OK
  5. In order to use a group, you should add at least one user to it. To do this, locate the group and double-click it or right-click the group and click Properties
  6. When the dialog box opens, click the Members tab
  7. Click Add
  8. In the bottom text box, enter the (complete) user name of the account
  9. Click Check Names
  10. When the name has been resolved, click OK
You can control the type of access that a security principal can exercise on a machine or a database, based on a level of accecss. There are three levels: Windows, server, and database:
Security Principals
Based on the functionality of a security principal, it can be considered as belonging to a collection.
To help the operating system identify them, each security principal uses a unique number called a security identifier (SID).
Practical LearningPractical Learning: Creating a Group
  1. Depending of your operating system, create a group named Clerks
  2. Set the Description to Applications Testers
  3. Add the operez and the rkouma accounts to it

    New Group

    New Group
  4. Click Create
Creating an Administrator Account
To actually install Microsoft SQL Server 2008, you must use a user account that has the ability to install an application. If you are using Microsoft Windows XP, Vista, or 7, you should use the Administrator account or create a new account that has administrative rights. The account must also use/have a password.
Author Note
During the installation of Microsoft SQL Server, you must log in, using a username and a password. If you are working in Microsoft Windows XP->7, after the installation, if you want, you can remove the password on the account, but you will not be able to connect to Microsoft SQL Server again. If you want to connect to the server, you will have to use a password again.
Creating an Administrator in Microsoft Windows 7
  1. To start, display the [Local Users and Groups (Local)] window
  2. In the left frame, click Groups
  3. In the right frame, either double-click Administrators or right-click it and click Properties
  4. Click Add...
  5. Check the contents of the Location. If you are working locally, click Locations. If a dialog box comes up, click Cancel. Select the name of the computer
    In the bottom text box, type the (complete) user name of the person

    Select Users, Contacts, or Computers
  6. Click Check Names

    Select Users, Contacts, or Computers
  7. When the name has been resolved, click OK
Creating an Administrator in Microsoft Windows Server 2003-2008
  1. To start, display the Active Directory Users and Computers window
  2. You have various options:
    1. To add an account to the built-in Administrators group:
      1. In the left frame, click BuiltIn
      2. In the right frame, either double-click Administrators or right-click it and click Properties
    2. To add an account to another group, such as the Domain Admins:
      1. In the left frame, click Users
      2. In the right-click frame, either double-click Domain Admins
  3. Click the Members tab
  4. Click Add...
  5. In the bottom text box, type the (complete) user name of the person

    Select Users, Contacts, or Computers
  6. Click Check Names

    Select Users, Contacts, or Computers
     
  7. When the name has been resolved, click OK
Practical LearningPractical Learning: Creating an Administrator
  1. Depending of your operating system, access the properties of the built-in Administrators account
  2. Add the pkatts and the gdmonay accounts to it

    Domain Admins Properties
  3. Click OK

Exercises
   
National Health Care Management

  1. Using the Internet, do some research to find out what a health care company does, what services it provides, how it generates revenues, and what types of customers such as company has
  2. Make a list of 3 private health care companies in different parts of the country or of the world
Metropolitan Area Electric Company
  1. Using the internet to find out the names of three different electric companies. Find out what their customers invoices (or the monthly bills they send to customers) look like
  2. Using either Microsoft Windows XP-7 or Microsoft Windows Server 2003-2008, create a user (or domain user). The first name is Ibrahima. The last name is Draman. The user name is idraman. The password is Password1. The user must change the password the next time he logs in
There was an error in this gadget
 
Get Twitter Fan Box Widget

Like Us On Facebook and Receive All Updates!

You can also receive Free Email Updates:

Powered By Tutorails

Followers