ryan k, as i call him, was one of my direct managers when i was first starting out in the software industry. he is the type of manager that preaches kaizen (continual improvement). together we tackled all sorts of learning opportunities like creating tech meetings, internal technical articles, programming puzzles, etc. he is one of those rare managers that gets it.
here is how this interview works. the questions that i ask are highlighted in bold. ryan k's responses are in italics.
Imagine you are the CEO of a new company (that has money). Describe the culture that you would want to create. Then answer this; do any of the companies that you know even come close to that ideal culture?
I think there are a lot information that is not really given in your hypothetical question that would alter my answer. Mainly the type of business and how much money and probably a bunch of other things. But I think I know what you are trying to get at, so I'll try to answer the question under the assumption my new company has a lot of cash laying around for R&D and that it deals with software in some sort of fashion.
For the software group I would want 3 things....and in this order.
1. Striving for Excellence. I would want a group that had an internal drive toward quality and timeliness. They would all really enjoy what they are doing and have pride in what they do. They should have the perseverance to go the extra mile to get things done on time and done right. This quality needs to be in all the individuals on the team and not just be a vague group goal. Everyone needs to want to produce the best quality that they can deliver and also be aware of how much they can produce to accurately schedule tasks. As a company, this culture would be something that is expected, from the top down.
2. Continuous Learning. I would encourage learning of new skills and new technology. In other companies, I've seen this done by having the individual think of things they want to learn or some narrow minded managers looking to solve short term needs. I would want a person or group to identify the next generation of technology and create areas where people can focus their education that would best benefit them and
I would also encourage people to continuously research new technology areas to be submitted to the "Continuous Learning Group" so that the most up to date technology can be assessed.
3. Innovation. I would encourage the submission of new ideas from anyone in the company. Ideas that are beneficial to the company future would be subsidized. The person that submitted the idea would be allowed to spend some of their time and have company resources to develop the idea along with other support personnel as needed.
These three things should, if we have the right people, amount to a fun job.
Do I know of any company that does this? No. Maybe Google but I don't know anyone that works there so I can't really say. But Google seems to have this type of aura about them. Who knows how much is truth and how much is just Internet Myth, though.
If there were Hawaii companies that had this culture, I would be doing everything that I could to get there. I don't know for sure but for some reason I think companies like Oceanit and Ikayzo might be on the right track.
One other comment. I think creating the ideal culture and for a company to support continuous learning and innovation, you need to have money to support that (and the learning and innovation need to bolster the company earnings in the future)....or you need the people to sacrifice their own time to make some of it happen. Because the bottom line is making money.....otherwise there wouldn't be a company to work for.
That was a very insightful response. Thanks!
I found your comment about Hawaii to be very interesting. You point out that Hawaii probably doesn't have this culture. You also mention that maybe Oceanit and Ikayzo might be leading the way. I agree with the maybe. The fact is that I'm not sure either. I think that "maybe" is a major problem. To me the problem with Hawaii is that there seems to be no dominating leaders here. There doesn't seem to be a strong company or leader that is able to show us the path to excellence. Anyway, thats my opinion.
Here is your question:
What do you think is holding Hawaii back? Is it the cost of living? Is it the brain drain? Is it Hawaii's relaxed culture? Is it Hawaii's tendency to shy away from risk?
What is holding Hawaii back from creating a technology company that is innovative and cutting edge?
I think that Hawaii schools, mainly UH, does not do the type of research that is on the cutting edge, create students that are exposed to new and great ideas, and drives them to create great things with what they've learned. I really shouldn't say that UH doesn't do it at all...but they definitely do not do it enough. These types of students, I believe, are a key component of creating companies and company cultures that are innovative.
Another reason is that there are not enough companies that are creating "new" things. Everyone seems to be filling immediate, or sometimes, yesterdays needs. The days of the dot-com startups are long gone and funding for new ideas is a lot harder to get. Even a traditional technology company setting, the type of environment that you are envisioning can be a somewhat risky endeavor. You need to have faith that if you invest in the best and create a productive, forward thinking atmosphere, that production, quality, and profit will rise. Because just doing things like everyone else, will most likely get things done. As a President of a company, it's a much safer call to take the low road.
So the bottom line is that there is no motivation to create a company that you are talking about. The only reason to do so is that you either have faith that it will be more productive in the long run or you are just way too altruistic.
ps. I really do not think that there are no people or companies like this in Hawaii....I just think they are few and far between.
I totally agree with the workforce comment. Its very hard to find rockstar students. I think it starts with the students, then to workers, then to leadership. But, since you are a manager lets focus our last question the students (or new hires).
I recently had a debate with a few of my co-workers on how to find the right students for an internship program. A few of my peers value things like thinking in code or being able to break down problems. Being a software guy, I am totally for that. But, I've been recently thinking that some of those skills can be grown. Students that I'm looking for have rockstar attitudes, rockstar smarts, and rockstar passion. I feel that those types of things can't be taught. The students I'm looking for are the future leaders of Hawaii.
Here is your last question:
What types of things do you look for when hiring someone? How do you find the right people that will embrace the culture you described above?
First of all, I'm assuming you are talking about hiring a full time programmer and not an intern. Because I think you may look for a slightly different type of person to be an intern....maybe. So anyway, what I look for when hiring a full time programmer.
First of all, they need to be intelligent. Not necessarily a genius, but pretty
smart. GPA wise, I would look for 3.2 and better. Perseverance and passion can only take you so far, intelligence sets the bar.
The next thing I look for is that they know, to a certain degree, how to code and they know what they are talking about. I just want to know that they have attempted to understand or have worked with code at a deeper level than a Hello World app. Ok, not that simple, but at least things like understanding Design Patterns, working with threads, or recursion. A good understanding of something at that level or deeper.
I then try to get an understanding of how much the person likes to code. I guess this is the passion for coding part. I try to determine if the person enjoys coding and why. I know why I like it and it seems as though for other people who really seem to like coding, it is a very similar feeling. But it may not be like that for everyone, so I also try to find out if the person has any side (non-work) programming type projects going on or at the very least that they are familiar with what is going on with cutting edge technology. I usually ask what they think the next "big" thing will be in technology. You can usually tell if someone has already been thinking about things which sometimes indicates that their interest is more of a passion and less of a job.
The final thing that I try to look for is a combination of problem solving, perseverance, innovation, and just getting things done. I would look for someone who I feel will do whatever it takes to get the job done right. Someone who, when they work on a project, will be able to balance a good design, features, and deadlines. These people tend to look for their solutions, not just with past knowledge, but are able to research new solutions in areas that are new to them. In my opinion, coders who are good at debugging, seem to do fairly good in this area.
Oh, and one last final thing. Personality. You need to be able to work well with others. This, by itself, can nullify all the other things.
So in order of importance:
2. Passion for Coding
3. Problem Solving, Perseverance, and Innovation
4. Coding Smarts
one of the things that is very evident in ryank's comments is that concept of kaizen. haha, and i totally like that he only mentioned money once. some of the interesting things is that coding smarts is number 4 on his list of importance for hiring. i really agree with that. well, i've realized that if we were in silicon valley we can really focus on coding smarts, because they have a large talent pool. maybe in places like hawaii, we don't have that luxury. maybe thats why, i've started to put less emphasis on coding smarts.