During the last two sessions at the AIM IT Leadership Academy I realized that my job is quite loosely defined which has hampered my ability to clearly set priorities. This week I will be sitting down with my boss, our CEO, to clarify what my responsibilities right now. On paper my job title is Chief Technology Officer, although as a small business employee I carry out many more responsibilities.
Our company is structured with the owner acting as CEO/President. The owner’s wife is our CFO. Myself and the COO report directly to the CEO. Also in our management group is the Business/HR manager. While our CEO has final say on everything, he typically oversees our product development team while our COO and myself oversee contract development.
In an exercise on High Payoff Activities yesterday, I listed what I do at work.
- Writing code for customers. I spend roughly 40-50% of my time writing code for customer projects.
- Acting as a project manager. I directly act as project manager on a few projects. This includes meeting with customers, compiling project requirements, assigning work, and reviewing completed work. As part of the management team I also keep an eye on whether other projects are hitting their goals. This takes up about 20% of my time.
- Provide architectural direction. As the technical lead, I give architectural input to most, but not all, of our projects. Of everyone at work I have probably have the widest exposure to different programming techniques.
- Mentoring junior developers. For a few hours a week, I typically pair with an intern or junior developer in order to teach them new frameworks or general programming practices.
- Set expectations and review them with employees. Although we have an HR manager, this responsibility has been split between all members of the management team without a clear owner. This is something I will be bringing up since I think it is causing confusion for some of our employees.
- Cold contacting prospective clients and networking. This is a relatively new addition to my responsibilities. We have outgrown our word of mouth based leads and are starting to expand our network. Nobody has a clear leadership role in this effort yet, although I am currently sharing it with our COO. As a team we need to set goals and someone should be following up on them.
- Research new technology. Mostly outside of work hours, I follow people who know things on twitter and RSS to keep up to date on the latest tools and methodologies. I evaluate these on my own before bringing them back to the company for input.
- Strategic planning. With our COO, I give feedback to our CEO on company initiatives and goals.
- Interview job candidates. I lead our technical interview process.
We have been trying not to be too “corporate”, but one area I’m going to recommend making changes in is assigning clear ownership over the currently shared responsibilities. We meet several times a week and the amount of time spent keeping everyone on the same page is starting to feel wasted. My preference would be for one person to own some/each of our initiatives (prospecting, mentoring, setting expectations, etc) and then report back to the others when necessary.