Never forget that the interview process is no different than any other sales process. You are selling your goods to the interviewer and trying to convince them that you are the best candidate for the job. If you read the last tip then you know that you are also a consumer in this process, looking for the best career opportunity. The selling goes both ways, but for now, we'll focus on what the interviewer is looking for in a candidate.
In these times, it's a given that there are a number of viable candidates. It is inevitable that many of the competition will adequately answer the technically focused questions that are thrown at you. The fact that you know Spring, NHibernate, Cucumber, or MVC does not separate you from the competition. Ok, well if you know Cucumber it probably does, but what are the odds that you'll get questioned about it? My point is that Java developers who know Spring and Hibernate are commodities. Candidates need to articulate the other, softer skills that they bring to the table because they stand out.
Separate yourself from the pack by showing your passion for software development. The fact that you are learning Erlang in your own time may not be applicable to my immediate project need, but it surely shows that you are honing your skills in your own time. Furthermore it shows that you are trying to get better at what you do and that you have some ability to learn independently. Employees like that are assets in any organization.
Covering the technologies used on your past projects doesn't have nearly as much impact as communicating how you stepped into the QA role on the project because there was a resource gap. Or how you were able to reduce the time spent in system testing by setting up a CI server to eliminate defects. Or how you worked over the weekend to fix an issue with the production system that had plagued the company for years. These instances tell a story that your technical responses never do.
Leadership, passion, independence, and drive are the factors that sway decision makers. Don't let yourself get continually attacked with technical questions. Answer them accurately and succinctly, but steer the interview towards the softer skills and show where you've gone beyond your role to ensure success on your projects. That is where you'll separate yourself from the commodity and win the job!
Monday, May 4, 2009
Thursday, April 30, 2009
Interviewing Tip #1 - Become the Interviewer
This economy blows. Let's be clear about that. Nationwide unemployment rose to nearly 9% in April and IT is not immune. I've had the first hand experience of letting people go who I would love to work with again and I cannot describe how painful that experience is. We've had a number of clients cut projects short, shelve them completely, or force a reduction in rates regardless of their contract. IT and consulting jobs specifically have become extremely competitive as a result.
This post (and some subsequent ones) will be targeted to anyone who is currently out of work or in a consulting role, interviewing for one of the precious few jobs out there. Please don't kid yourself, you will be one of many potential candidates who are vying for jobs and a lot of candidates are out of work and willing to come in at a lower salary/bill rate. Separating yourself from the masses is even more critical in this environment.
I have the unique position of sitting on both sides of the interview desk. I interview about 50 people per year and also compete as a candidate for some consulting engagements. I'm going to try to let people know mistakes that I, my consultants, or my candidates have made and areas where we've excelled.
Tip #1 - Become the Interviewer
As an interviewer, if I don't feel like I want to work with you, I probably won't hire you. More importantly, if I don't feel that you want to work with us, I definitely won't hire you. I've worked with people who have no passion to come in on a day to day basis and help me solve problems, and they are a huge anchor to our team's productivity. They create tension and animosity among teammates, they slow the overall velocity of our team down, and generally do more harm than good.
If you want to dispel that feeling in your interviewer, then you need to let them know that you are eager to work in the position in front of you. I end every interview by asking a candidate if I can answer any questions that they have. If the candidate has not asked any questions to that point and still has nothing to ask me, I'm pretty much assured that they have no real interest in building a career at our organization. They are looking to fill a monetary gap in their life and I have no interest in helping them out.
Conversely, if the candidate responds with questions about the team, the environment, the projects, the challenges, the organizational structure, the benefits, the strategic direction, the color of the walls, the quality of the seats, the use of Lotus Notes, etc... then I know that they have a genuine interest in working with QSI and they are doing their homework. Further, they obviously are looking at making an educated decision on their career and not just getting a job. The interview should always be bi-directional, don't just get peppered by the interviewer.
Also, please recognize that the astute interviewer will draw some conclusions about you based on the questions you are asking. Candidates need to focus on asking the questions that are most important and critical in determining whether they want to work on this project. If you are only asking me about money, vacation time, health benefits, and the like I am pretty confident that your deciding factor is strictly based on compensation. I personally get much more excited when I'm interviewing someone and they are asking about the team makeup, type of project, challenges, technologies in use, and opportunity for career growth. Just please, don't ask me about our use of Lotus Notes, I don't want to scare you away.
This post (and some subsequent ones) will be targeted to anyone who is currently out of work or in a consulting role, interviewing for one of the precious few jobs out there. Please don't kid yourself, you will be one of many potential candidates who are vying for jobs and a lot of candidates are out of work and willing to come in at a lower salary/bill rate. Separating yourself from the masses is even more critical in this environment.
I have the unique position of sitting on both sides of the interview desk. I interview about 50 people per year and also compete as a candidate for some consulting engagements. I'm going to try to let people know mistakes that I, my consultants, or my candidates have made and areas where we've excelled.
Tip #1 - Become the Interviewer
As an interviewer, if I don't feel like I want to work with you, I probably won't hire you. More importantly, if I don't feel that you want to work with us, I definitely won't hire you. I've worked with people who have no passion to come in on a day to day basis and help me solve problems, and they are a huge anchor to our team's productivity. They create tension and animosity among teammates, they slow the overall velocity of our team down, and generally do more harm than good.
If you want to dispel that feeling in your interviewer, then you need to let them know that you are eager to work in the position in front of you. I end every interview by asking a candidate if I can answer any questions that they have. If the candidate has not asked any questions to that point and still has nothing to ask me, I'm pretty much assured that they have no real interest in building a career at our organization. They are looking to fill a monetary gap in their life and I have no interest in helping them out.
Conversely, if the candidate responds with questions about the team, the environment, the projects, the challenges, the organizational structure, the benefits, the strategic direction, the color of the walls, the quality of the seats, the use of Lotus Notes, etc... then I know that they have a genuine interest in working with QSI and they are doing their homework. Further, they obviously are looking at making an educated decision on their career and not just getting a job. The interview should always be bi-directional, don't just get peppered by the interviewer.
Also, please recognize that the astute interviewer will draw some conclusions about you based on the questions you are asking. Candidates need to focus on asking the questions that are most important and critical in determining whether they want to work on this project. If you are only asking me about money, vacation time, health benefits, and the like I am pretty confident that your deciding factor is strictly based on compensation. I personally get much more excited when I'm interviewing someone and they are asking about the team makeup, type of project, challenges, technologies in use, and opportunity for career growth. Just please, don't ask me about our use of Lotus Notes, I don't want to scare you away.
Wednesday, January 21, 2009
2009 Goals
My good friend Jeff tagged me to blog my goals for the year. I'm glad he gave me a little inspiration for this as my personal goals are something that's been floating around in my head for some time. With the exception of the first two they are in no order. Here they are, etched in the annals of the internet.
1.) Delight my wife
2.) Be a better father to my 2 girls
3.) Exceed the expectations of every customer I come in contact with
4.) Blog every other week
5.) Speak every quarter at a user group or conference
6.) Contribute to an open source project
7.) Hire 5 people smarter than myself (low barrier, I know)
8.) Exercise 3 times a week
9.) Read 12 books
10.) Brew 4 times
1.) Delight my wife
2.) Be a better father to my 2 girls
3.) Exceed the expectations of every customer I come in contact with
4.) Blog every other week
5.) Speak every quarter at a user group or conference
6.) Contribute to an open source project
7.) Hire 5 people smarter than myself (low barrier, I know)
8.) Exercise 3 times a week
9.) Read 12 books
10.) Brew 4 times
Sunday, December 14, 2008
Burning Media from Mac OSX
Repeat after me, "Sissies use GUIs. Sissies use GUIs. Sissies use GUIs."
Okay, now that we have that covered here is the command I continue to forget when trying to burn an iso onto a CD from my macbook pro.
hdiutil burn ~/Downloads/ubuntu-8.10-desktop-i386.iso
Beats fumbling around with Finder any day.
Okay, now that we have that covered here is the command I continue to forget when trying to burn an iso onto a CD from my macbook pro.
hdiutil burn ~/Downloads/ubuntu-8.10-desktop-i386.iso
Beats fumbling around with Finder any day.
Tuesday, December 9, 2008
Howdy Parnter!
I'm pleased to announce that Quick Solutions, Inc. is now a certified Systems Integration Partner with SpringSource.
The Spring framework is the standard for Java development. SpringSource has built upon that momentum with a keen vision in developing products and services that benefit enterprise customers using Spring. Whether it is the OSGi enabled dm Server, an instrumented version of the Spring offering with a common monitoring application, or a support model that bests Oracle, IBM, or JBoss, the future of Java development is a very clearly dominated by Spring and SpringSource.
Quick Solutions is driven by providing software based solutions to our customer's problems. We strive to do this in a manner that passes the most value on to our clients. Partnering with SpringSource will allow us to clearly articulate and demonstrate the value that their products generate within Enterprise Java development. We look forward to working closely with Rod and the gang in 2009 and beyond.
Stay tuned for some more information on making best use of the products in the SpringSource umbrella.
The Spring framework is the standard for Java development. SpringSource has built upon that momentum with a keen vision in developing products and services that benefit enterprise customers using Spring. Whether it is the OSGi enabled dm Server, an instrumented version of the Spring offering with a common monitoring application, or a support model that bests Oracle, IBM, or JBoss, the future of Java development is a very clearly dominated by Spring and SpringSource.
Quick Solutions is driven by providing software based solutions to our customer's problems. We strive to do this in a manner that passes the most value on to our clients. Partnering with SpringSource will allow us to clearly articulate and demonstrate the value that their products generate within Enterprise Java development. We look forward to working closely with Rod and the gang in 2009 and beyond.
Stay tuned for some more information on making best use of the products in the SpringSource umbrella.
Tuesday, October 14, 2008
Thank You SchemaSpy
I love open source contributors. These people are the geeks who bypass reality shows, online gaming, and time with their families so that they can bring you something that will make your life better. They get nothing in return but a "atta boy/girl" and a pat on the back.
I am taking it upon myself to give thanks to a few of these open source contributors over the coming months. I am a typically just a taker when it comes to open source, but I would like to at least let the givers know, that I appreciate their hard work and commitment.
The first shout out goes to the kind contributors of SchemaSpy. SchemaSpy allows you to generate a web based ERD of an entire database, that is easily navigated by clicking on images throughout the web application. It's a simple jar file that can be downloaded and executed on any platform that has java installed. It supports a wide variety of databases and produces a ton of information in an easy to digest medium. The first thing you'll be presented is the table listing:

This view gives you all of the tables in the system, the number of rows in each table, and a number of other tables directly related via foreign key to this table.
When you click on one of the table names you are presented with the more specific table view:

The top level of information is like a describe of the table, but checking some of the boxes will allow you to see navigable parent and child rows for each of the columns.If you click on the images in the mini-ERD at the bottom of the page, it will navigate to the appropriate tables. Also note that you can expand the mini-ERD to 2 degrees of relationships.
These features in and of themselves are enough reason to automatically document your database with this tool, but another really applicable portion of the tool is the ability to identify anomalies within the database. Clicking on that tab provides you with this view:

Here you'll see a number of bad database smells very quickly. Unleash a DBA worth their weight on this page and you'll have some table alterations done very quickly.
I honestly see no reason to not use SchemaSpy on any project that we have. It is extremely easy to use, can be integrated into a build, and provides better reference documentation on the database than the vast majority of projects I've worked on. Well done SchemaSpy crew, and a sincere THANKS!
I am taking it upon myself to give thanks to a few of these open source contributors over the coming months. I am a typically just a taker when it comes to open source, but I would like to at least let the givers know, that I appreciate their hard work and commitment.
The first shout out goes to the kind contributors of SchemaSpy. SchemaSpy allows you to generate a web based ERD of an entire database, that is easily navigated by clicking on images throughout the web application. It's a simple jar file that can be downloaded and executed on any platform that has java installed. It supports a wide variety of databases and produces a ton of information in an easy to digest medium. The first thing you'll be presented is the table listing:

This view gives you all of the tables in the system, the number of rows in each table, and a number of other tables directly related via foreign key to this table.
When you click on one of the table names you are presented with the more specific table view:

The top level of information is like a describe of the table, but checking some of the boxes will allow you to see navigable parent and child rows for each of the columns.If you click on the images in the mini-ERD at the bottom of the page, it will navigate to the appropriate tables. Also note that you can expand the mini-ERD to 2 degrees of relationships.
These features in and of themselves are enough reason to automatically document your database with this tool, but another really applicable portion of the tool is the ability to identify anomalies within the database. Clicking on that tab provides you with this view:

Here you'll see a number of bad database smells very quickly. Unleash a DBA worth their weight on this page and you'll have some table alterations done very quickly.
I honestly see no reason to not use SchemaSpy on any project that we have. It is extremely easy to use, can be integrated into a build, and provides better reference documentation on the database than the vast majority of projects I've worked on. Well done SchemaSpy crew, and a sincere THANKS!
Saturday, October 11, 2008
Book Review: The Productive Programmer

When I heard that Neal Ford was releasing a book on programmer productivity, I anxiously went to Amazon to pre-order it. Problem was that it was almost two years ago and Neal's busy schedule has kept him from finishing it for quite some time. Now that it is finally out and I've read through it (twice actually), I would highly recommend it to anyone doing software development on a daily basis.
I've seen Neal speak at a number of conferences like Codemash, NoFluffJustStuff, and eRubycon, and I've always walked away with something that will improve me as a software developer. The reason is fairly simple, Neal is at his core a developer, and more than many other speakers, he understands the problems and challenges that face developers.
The The Productive Programmer is really two smaller books slammed together.
The first part is focused on tools and techniques that help you work. I actually re-read the book a couple of times because I did a horrible job of keeping track of the utilities and power toys that I wanted to download my first time through. The second time I went through it I started putting post-its on the pages where I wanted to remember a command or download a utility that made sense. The book was littered with post its by the end of it. Neal provides a number of utilities and techniques for both Mac and Windows platforms that will allow you to work more efficiently in your day to day environment. *nix environments are notably absent here, but the command line advice provided for Macs, are obviously equally useful across any *nix distro.
The second part of the book is largely focused on how you build software. A large majority of Neal's talks at conferences carry this common theme. Neal is adept at identifying and explaining principles and patterns of development that yield the best results. Metaprogramming, TDD, Fluent Interfaces, Polyglot programming and many other topics are covered in an easy to digest manner that harkens back to the bible of software development: The Pragmatic Programmer. Neal is able to provide concrete examples throughout the book, based on his vast experience in consulting through the years.
The productive programmer is easy to read, full of valuable information, and applicable to junior developers and seasoned veterans alike. Again, I would highly recommend it to anyone developing software on a daily basis.
Subscribe to:
Posts (Atom)