Torbjorn Zetterlund

Wed 01 2016

What does it means to be technical

by bernt & torsten

You work in an IT department on the business side as Project Manager, business analyst or anything related to project delivery. In your performance review, you have been told you are not technical enough and need to improve.

Have you ever reflected when someone tells you that you are not technical enough and need to improve your technical skillset?

It’s not an easy question to answers as it means different for different organizations. The word “technical” comes from Ancient Greek tekhnikos “of art,” from tekhne “art, skill, craft” and the modern meaning dating from 1727.

Literally, it means a person skilled in the art or craft and could describe – for example – a potter, an architect, an engineer, a painter, etc.

To be technical in the modern age means being able to comprehend and manipulate complex systems. The system in question might be a computer, a car, the mechanics of an election or the minutiae of tort law.

Going back to the role of a Project Manager, Business analyst – what is technical – it does not mean that you need to know how to code.

What they would need is the understanding of the tools, systems, and architecture to build software.

  • Having the basics, such as how the internet works, what typical software architecture looks like, and the function performed by an API is important.
  • Understand the roles played by HTML, JavaScript, CSS, MYSQL, and PHP in the typical website. (If you evaluating a system it’s important to know what backend languages the system uses (e.g. PHP) and what methods of software development are used (e.g. Agile).

Technical knowledge is an understanding of modern technology, for e.g If you know how to use the hidden functions on your smartphone, can work the latest gadgetry blindfolded, and understand the basics of programming that smartphone, gadgetry e.g. function, then you have a high level of technological knowledge.

You don’t need to have a deep working knowledge – just having a basic knowledge and informed opinion on these matters can be valuable.

Having these skills, you will be able to motivate engineers to work with you on projects without having formal authority over them.

Being able to communicate with engineers means being able to convey concrete meaning in terms of product (whether this is part of a formal spec or some more informal process), being able to converse on tradeoffs and blockers (e.g. technical dependencies), and having some knowledge of what it will take to create a given feature.

Don’t “Learn to Code”, Learn SQL

“Learn to code” is a popular means to gain an understanding of the different languages, systems, and architecture as used to develop an application.

A good engineer will have a high level of technical knowledge on abstract topics such as data structures and algorithms, working knowledge of computer networks, as well as a high level of domain-specific knowledge (e.g. backend web development or machine learning).

One area in which a Project Manager can excel is in querying databases. Structured Query Language (SQL) is a simple language used to get data into and out of relational databases. SQL is a domain-specific language, meaning it is only applicable to relational databases: you can’t, for example, use SQL to build a website.

For this reason, SQL is an afterthought for a lot of engineers: they mainly write in an object-oriented language such as Python, only using SQL when they interact with a database. Some engineers may never write SQL.

This is a great opportunity for a Project Manager to add value to the organization. Given the emphasis on tracking and measuring, being able to extract your own data from one or more of the organization’s databases will make you self-sufficient: freeing up any engineering resource you would have needed to use, and enabling you to be inquisitive – follow hunches, cluster users, and test hypotheses of your own.

With a few months’ practices, you can become as strong in SQL as most engineers in your company.

On a general note, you should be well acquainted with the technology that you may have to use in the job that you do, you should have sound knowledge of the basic techniques, as well as you, should also be aware of the upcoming updates on the technology you are working with. You should also be a good learner as there are new technologies or changes to the current that is good to know.

In your view what does it mean to be “technical”?

Is it

  • what is technical knowledge? Or
  • what it means when people say “you have good technical skills”? or
  • something else

Let me know your view below.