Software Developer Interview
Thank you for your interest in my Software Developer positions. In an effort to be sure that the position is a good fit, please follow the instructions on this page.
If you are familiar with the tools and skills required for this job then this should only take a few minutes. If you don’t have any experience with the tools and tasks listed below then the job probably is not a fit for you.
Subversion and TRAC
I want to be sure that you can work with Subversion and TRAC. I’ve setup a test subversion repository here:
The username and password, which includes commit privileges, is this:
The TRAC installation, which works with the same username/password above, is here:
Please do the following. It shouldn’t take more than a couple of minutes:
- Log in to TRAC and create a new ticket. Put your name and the date in the ticket. Make a note of the ticket number.
- Checkout the trunk of the repository
- Open the IWasHere.txt file and add your name, a tab and today’s date on a new line
- Save and commit the file. In your commit message add ‘fixes #XX’ where XX is the number of the ticket you created above in trac
- Create a tag of the format 1.X, where X is the next integer value. You’ll have to look at the existing tags to know what tag to create. For example, if the last tag was 1.3, then you would create the 1.4 tag.
Object oriented programming is a critical skill for this position. Please complete the exercise below and send the completed file to me using the form on this page. For clarity, please make sure the name of the file is your own name before sending it to me.
This task should also take only 5-10 minutes. If it takes you considerably longer then this position is probably not a fit for you.
Create a class that that represents a right triangle. It must compute the Hypotenuse and the area. You might find this helpful http://en.wikipedia.org/wiki/Hypotenuse. You may use any language you like. PHP, Python and Java are preferred.
Example use of the object you are expected to create:
longSide = 12 shortSide = 4 triangle = new RightTriangle(longSide, shortSide) print triangle.getHypotenuse() print triangle.getArea() EXPECTED OUTPUT: 12.64911064067 24