Showing posts with label interviews. Show all posts
Showing posts with label interviews. Show all posts

Monday, June 6, 2011

phone screen questions


Phone screen technical questions


What is the difference between client-side and server-side scripting? Under what situation will you use which type?
Give me some examples of each type of scripting technology.



Describe the company to him, what kind of work is done here – brief intro to the project/product.

Instructions


  1. Go through those questions with the candidate on the phone, and fill in the gathered answers in the space provided after each question
  2. Pick one experience on their resume and ask the candidate a question or two to verify their participation and role in that experience.

General


  1. What is the difference between a process and a thread?
    A process has its own address space; a thread is part of a process and uses the address space of its parent process.

  2. What is the difference between a heap and a stack?
    A heap is memory used to store non-local data. A stack can be used to only store local data (ie, data that can be accessed only by the function that is executing, or any function that it calls).

  3. What is an access violation?
    Illegal access to a memory location, or accessing a memory location that is not mapped.

  4. How do you determine the code location of an access violation that occurs in the field?
    Configure the process to generate an image dump file and then load this in the debugger to view the call stack.

MultiThreaded Experience


  1. What is the difference between a semaphore and a lock?
    A lock allows exactly one entity (thread, process) to access a protected resource; a semaphore allows a specific number (controlled number) of entities (processes, threads) to allow a resource.

  2. What is a deadlock?
    A situation where there are two resources protected by two locks, A and B. One process (or thread) comes along, locks A, and wants to lock B. But another process (or thread) has locked B and is waiting to lock A. Neither one can proceed and this situation is called a deadlock.

C/C++


  1. What are the two arguments to the function “main”?
    argc, and argv
    Count of arguments and an array (or vector) of string arguments.

  2. What is a C++ class?
    It is a type of data structure that allows for the code and data associated with a logical object to be abstracted or packaged together.

  3. What is a virtual function?
    A function of a class that can be overridden by derived classes.

  4. What is the difference between a private member and a protected member of a C++ class?
    Private allows access by methods of the class (or by friends of the class).  Protected allows access by derived classes as well.

  5. What is a Reference in C++?
    Like a pointer, it is the address of an object, but syntactically, it behaves like the object itself.

  6. Why are templates important to C++?
    No root base class exists for creation of generic containers as in Java or other rooted OO languages, and templates allow enforcement of type safety.

COM/COM+


  1. What are the three methods on the IUnknown interface?
    AddRef, Release, QueryInterface.

  2. How do you create a new com object?
    CoCreateInstance

  3. What are the different apartment threading models in COM?
    STA (single threaded), MTA (multi threaded), TNA (thread neutral) and Both/Any (allows STA, MTA or TNA to match creator apartment)

  4. What language is used to define COM interfaces?
    IDL.

Java

  1. What is a Java Class?
    It is a type of data structure that allows for the code and data associated with a logical object to be abstracted or packaged together.

  2. What package do you need to import for simple TCP/IP communications?
    java.net.*

  3. What is the Java VM?
    Java programs are compiled to bytecode that is then executed by the Java Virtual Machine.

  4. How do you create a pointer in Java?
    You don’t!

  5. What is the java facility that allows you to inspect classes at runtime called?
    reflection

Networking:


  1. What is a DMZ?
    De-Militarized Zone, or the network zone between two firewalls.

  2. What is NAT?
    Network Address Translation - or a device that maps one IP address to another.

  3. Why do you need technology like NAT?
    To map internal IP addresses/Ports (which are typically in the non-routable range) to external IP addresses/Ports.

  4. What is the purpose of calling bind when listening on a TCP socket?
To specify a local end point (IP address and port) to accept connections on

IIS/ASP:

  1. How are ASP pages different from HTML?
    ASP pages contain server side scripting.

  2. What is a CSS file used for?
    CSS = cascading style sheet, used to specify formatting separately from the HTML content.

  1. How do you perform client side validation on a form element?
    Typically, associate a client side validation script with an event on the HTML element.   .NET supports some declarative client side validation.

SQL Server

  1. What is a join?
    A SQL operation that produces a single (logical) table from two or more tables, by matching one column in one table with a column in the other table.

  2. How are inner and outer joins different?
    An inner join is where the result contains rows that have a match in the column values in both tables.   An outer join allows data from one of the tables to be included even if the join column data is null.

  3. What is normalization?
    The design process that eliminates repetitive data.

  4. Assume you have a SQL table with 30 million rows and you want to fetch a few records.  How do you ensure the query returns quickly?
    Ensure that the where and order by criteria are supported with appropriate indexes.

XML / XSLT

  1. What is a DOM
    Document Object Model is a parsed, in memory XML document.

  1. What is XSLT
    Extensible Style Language Transformations.

  2. What is XSLT useful for?
    For converting XML data to any other format.

  3. What techniques are normally used to embed an arbitrary XML document inside another as a text entity?
    Normally either XML entity encoding (e.g. “&” -> “&&”) or enclosing the data in a CDATA section.



Tuesday, June 22, 2010

python: to do

  • finish pythonchallenge
  • learn python 3.0
  • http://www.techinterviews.com/python-interview-questions-and-answers
  • http://www.geekinterview.com/Interview-Questions/Programming/Python
  • list comprehension
  • filter
  • lambda
  • map
  • list generators / generators

Wednesday, June 2, 2010

questions to ask the interviewer!

WORK METHODOLOGY AND WORK STYLE

  • What kind of software engineering methodology is
    practised here?
    Agile, Iterative, Waterfall?

  • Do you
    have something like a "Quick Response Team" that monitors and handles
    critical/production issues?

  • Is quality control here more
    proactive or reactive? Do you have PCVs? PreCheckinVerifications?
    Do
    testers have test cases ready before the dev drop? Do testers
    automate
    some of these major test cases prior to dev drop? Do
    testers automate at all?

  • What is the timeframe for a
    typical major release/milestone? (We used to have a significant
    milestone in 6-8 weeks in Pi - minor milestones would be done in 1-2
    weeks, depending on urgency of the bugfix/release).

  • Level
    of whitebox testing: Do testers here look at code? Do you
    encourage them to?

  • Can QAs attend dev design
    discussions
    ? If not, then can the QA get a design dump as soon as
    design is finalized?

  • Do Devs write their own unit
    tests
    for each feature that they develop? Does QA accept the dev
    drop only after all unit tests have passed?

  • What kind of
    source control do you use? CVS, SVN, Git, Mercurial, Bazaar?

  • How
    do you feel about documentation?
    What kind/level of
    documentation do you follow for:
    - business requirements
    - software requirements specifications (SRS)
    - software design spec
    - coding (code commenting standards, wiki pages, etc)
    - testing
    (overall test plan for a given team+milestone, feature test spec, test
    suites, test cases)
    - defects (defects db,

CULTURE AND ENVIRONMENT
  • TRICKY, HARD-HITTING QUESTION: Do you encourage
    employees to work on technical projects of their own? Do you support
    them by giving them, say, half a day per week to pursue their personal
    projects? Otherwise how do you expect employees to be innovative and
    passionate about technology? (i.e. citing examples of projects on
    DechoLabs - the URL Security Tester that would pass null and bogus
    parameters to the URLs in the hope of causing a crash e.g.)

    Another example is the TestLabAutomation initiative (Django project) that Biju and I had started.

  • How seriously does your company take CSR (Corporate Social Responsibility)? What initiatives and programs does your company currently have for this?


  • Do programmers have a quiet work environment? If I want to have a discussion with my cube-mate, do I have to schedule a meeting in a meeting room?

  • How is the work environment here? Rigid/formal or open/relaxed/casual?

  • What are the working hours like? How strictly are work hours enforced?

  • What are the recreational facilities? What do employees do here when they're not working? Is there a TT table? Is there a gym?



references:
http://stackoverflow.com/questions/329289/really-wow-them-in-the-interview