In a previous post, I started talking about the technical roles an organization would need to fill as a prelude to discussing whether the organization needed an actual CTO.

The roles I previously discussed were:

• Technical Business Analyst
• Software Architect
• Infrastructure Architect
• UX/UI Designer
• Developer

In this post, I’ll talk about:

• Technical Project Manager
• QA Engineer
• System Administrator/Database Administrator/Network Administrator
• Technical Product Evangelist
• CTO

Let’s get started!

• Technical Project Manager

A software development project requires a balance between technical and project management skills. The TPM oversees and manages most aspects of the requirement analysis, specification development, coding/development, testing and implementation processes.

• QA Engineer

From https://www.sokanu.com/careers/software-quality-assurance-engineer/

Quality Assurance – A software quality assurance engineer is someone who monitors every phase of the software development process so as to ensure design quality, making sure that the software adheres to the standards set by the development company. Software quality assurance engineers make sure that new products work before they are released to the public.

• System Administrator/Database Administrator/Network Administrator

From Wikipedia

A system administrator, or sysadmin, is a person who is responsible for the upkeep, configuration, and reliable operation of computer systems; especially multi-user computers, such as servers.
A database administrator (DBA) maintains a database system, and is responsible for the integrity of the data and the efficiency and performance of the system.
A network administrator maintains network infrastructure such as switches and routers, and diagnoses problems with these or with the behavior of network-attached computers.

These are the people who keep the servers, databases and network running smoothly. They initially implement the Hardware Architect’s design, but thereafter they are responsible for keeping things running.

• Technical Product Evangelist

From Wikipedia – https://en.wikipedia.org/wiki/Technology_evangelist

“An evangelist promotes the use of a particular product or technology through talks, articles, blogging, user demonstrations, recorded demonstrations, or the creation of sample projects.”

Essentially, this person promotes the product and the technology used by the product, both inside and outside of the organization.

• CTO

Even if I’m talking about whether you need to hire a CTO, there are some CTO like roles or functions that someone needs to address in a startup. These would include the following:

o Estimate development time and costs. Developers and Project Managers have some of these skills, but for larger projects you may need someone with a fair amount of experience with this.

o Work with architects to include provisions for scalability and future functions. Knowing what the business objectives and growth plans are and planning for that growth in the initial design can prevent costly and time consuming efforts later on. Again, experience helps with this function.

o Determine features and functionality for MVP – 80% of the functionality for 20% of the time and cost. Once again, experience and seniority are needed to be able to identify what functionality is important, but you also need someone with the credibility to get the business people to agree to an initial reduced set of functionality.

In my next post I’ll cover whether you need to hire a CTO or just hire the a la carte skill sets to fulfill these roles.

Comments are closed.