Recommended reading – Developers interview at ThoughtWorks

I have been helping with recruitment in ThoughtWorks for quite some time now. Based on my experiences of interviewing developers, following are some links I would recommend everybody should go, or have just skim through while appearing for an interview at ThoughtWorks.

Note: This is not a exclusive list by any means. I have tried to keep this list as programming language agnostic as I can. All of the points mentioned below are absolute basic knowledge to have. Advanced topics are usually covered in the interview based on the experience and expertise of the candidate.

About ThoughtWorks

ThoughtWorks website
About ThoughtWorks
ThoughtWorks Products
ThoughtWorks stance on social and economic justice

Object Oriented Modeling and Design

Object Oriented Analysis and Design – Wikipedia
Classes and Objects
Analysis: Finding the classes and objects
How to find the classes
Domain Model – Wikipedia
What is Domain Modeling
Employing the Domain Model Pattern

Data Structures

Data Structure – Wikipedia
List of data structures
Data Structures – Fundamental Tools
Data Structures and Algorithms: When To Use What?
An Extensive Examination of Data Structures

Programming general

Programming Languages – Introduction – Wikipedia
List of Programming Languages – Wikipedia
Intro to Programming Course In Java – Udacity online course
Object Oriented Programming – Wikipedia
Intro to Object Oriented Programming
Functional Programming – Wikipedia
Functional Programming – Haskell Wiki
Functional Programming Principles in Scala – Coursera online course

Clean code and Refactoring

Code Refactoring – Wikipedia
Online catalog of refactorings
What Is Refactoring
Code smell – Wikipedia
Code smell
Code Smells – Coding Horror

Web Programming

Web development – Wikipedia
Web development tools – Wikipedia
Web application – Wikipedia
Web application development – Wikipedia

Computer Networks

Computer Network
How does the Internet work?
How Internet Infrastructure Works?
What happens when you type in a URL in browser?

Software Engineering

Software Engineering – Wikipedia
Software development process
Waterfall model

Agile

Agile – The New Methodology
Agile software development
Manifesto for Agile Software Development
Principles behind the Agile Manifesto
Agile Methodology

Agile Practices

The Big List of Agile Practices
35 Agile Development Best Practices
Guide to Agile Practices

Agile vs Waterfall

Agile Vs. Waterfall: Evaluating The Pros And Cons
Agile & Waterfall Methodologies – A Side-By-Side Comparison
Agile vs. Waterfall
Waterfall vs. Agile: Which is the Right Development Methodology for Your Project?

Test Driven Development (TDD)

Test driven development – Wikipedia
Test driven development – Martin Fowler
The three laws of TDD
Introduction to Test Driven Development (TDD)

Extreme Programming (XP)

Extreme programming – Wikipedia
The Rules of Extreme Programming
What is Extreme Programming?
Agile Modeling and eXtreme Programming (XP)
Extreme Programming

Pair Programming

Pair Programming – Wikipedia
Agile Development Methods – Pair Programming
Guide to Agile Practices – Pair Programming
How to Pair Program
Pair Programming Benefits
Pair Programming Benefits – C2 Wiki
The Costs and Benefits of Pair Programming (PDF)

Useful blogs to follow

Martin Fowler’s blog
ThoughtWorks Insights

Books

Refactoring – Improving the Design of Existing Code
Clean Code: A Handbook of Agile Software Craftsmanship
Growing Object-Oriented Software Guided by Tests
Structure and Interpretation of Computer Programs
Domain-Driven Design: Tackling Complexity in the Heart of Software
Test Driven Development: By Example
Extreme Programming Explained: Embrace Change – Bookk by Kent Beck

Advertisements

4 thoughts on “Recommended reading – Developers interview at ThoughtWorks

  1. Thanks bro.Its really useful.
    I think, thoughtworks needs person who can solve any problem in software engineering world.
    I will study & follow above points in my work.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s