This page describes what you can expect at an interview for Software Engineering positions at Directi. A typical interview will consist of some of the below rounds and technologies
Initial Steps
Telephonic interview: This will typically involve a preliminary conversation covering a problem solving round and a tech round consisting of some of the technology topics listed below
Offsite Coding Exercise: You maybe asked to submit a solution to any of the problems on our Coding Puzzles page
In-person Interview Schedule
Day
Round
Duration
Positions
1
Algo + Tech Rounds
1.25 hrs
All
1
Design Round
1 hr
All
1
Pair Programming round
1 hr
All
2
System Administration Round
1 hr
Sr. Developers and above
2
Advanced Tech Round
1 hr
Tech Leads and above
Optional
Product Strategy case study round
1 hr
Sr. Developers and above
Optional
Usability and UI: UX round
1 hr
Sr. Developers and above
Algo + Tech Rounds
Multiple rounds, each consisting of algorithmic questions to gauge problem solving and tech questions to gauge tech knowledge
The goal is to obtain an optimized pseudo-code solution
The tech questions will cover some or all of the topics listed below in the Common Topics section
Design round
In this round, lasting about 1 hrs, you will be given a design problem. We will supply you with the problem in advance. You will be asked to write code on an independent station. Our goal with this exercise is to explore your ability to deliver a good, clean, simple, extensible and testable design.
Pairing round
In this round, lasting about 1 hr, someone from our side will pair with you on a pairing station and work on the design problem provided in the Design round above, to implement a few additional use cases. Our goal with this exercise is to explore your ability to work collaboratively.
Advanced Tech Round
In this round we will cover questions on subjects listed under Advanced Topics below.
Product Strategy round
In this round we will discuss product strategy of an existing web 2.0 product or service and have a dialogue concerning business plan, vision, strategy, feature roadmap, revenue models etc
UX round
You will be provided with a User Experience scenario and expected to come up with prototypes for the same
General notes
Irrespective of your experience, designation and level, we expect you to be able to roll up your sleeves and write/understand code
Given the high level languages, MVC/ORM frameworks and other abstractions available today, most people don't bother to look under the hood. We respect individuals who are curious and figure out how things work at the lower layers (Compilers / OS / Kernel / CPU / Network Stack etc)
We love individuals who are self-taught, especially those who have been coding since the first zx-spectrum/bbc micro/commodore made its appearance, with monochrome single color terminals and 5 1/4 inch floppy drives
Three things that matter to us when it comes to writing applications are Good Design, Scalability and Usability. We expect you to demonstrate that you keep these in mind when developing applications.
We love individuals who "write", regularly - in the form of blogging, or contributing to wikis
Contributors to opensource projects get special points
We believe a good developer is platform-agnostic. Every language / technology has its pros and cons, and developers who can leverage the right tool for the task will have an advantage over developers who cannot
Common Interview Topics
Irrespective of which team you are joining, your interview process may cover some of the following topics (unless not relevant for your profile). You are not be expected to know all of the below topics. Our goal is to determine your breadth of knowledge, since our projects span many myriad technologies
Algorithms
OOPs
Design Patterns
Networking and TCP/IP
HTTP
Sockets programming
MVC frameworks
ORM frameworks
HTML, CSS
Javascript / Ajax / RIA
RDBMs (Simple and Advanced)
Multi-threading
Agile development / Development methodologies
Unit Testing / Mocking
Usability
Web Services / SOA / REST / SOAP / Remoting
Security
Advanced interview topics
Senior positions may require awareness of some of the topics below -
Scalability
Architecture Design
Capacity Planning
Platform Selection
Strategy and Vision
Development Methodologies
Internationalization
Advanced Security concepts (CSRF, XSRF, DDOS mitigation and more)
OS Concepts
Agile Processes / CI / Automated Testing
Working@Directi
If you are up for it, we believe in putting money where our mouths are. Subject to your willingness, we may propose that you take a short leave of absence from your current stint and join us for two weeks to work with us here at our offices. If you select to join us we will pay you for your time here, and during the process we will be able to gauge mutual compatibility first hand. You will get a feel of the work environment here, and we will get a feel of your capabilities. This is a no-risk proposition allowing you to get a flavor of our organization before making a commitment.
Comments (1)
Jul 07, 2008
Anonymous says:
Very interesting screening process, says a lot about the company. santosh MVery interesting screening process, says a lot about the company.
santosh M