Day by day we are moving towards a tech-first era in the search for advancement. No matter what you sell, you can do it better with a pinch of technology. I was recently going through a blog by Karan Bajaj (Founder of The Whitehat Jr., amazing content btw) and he repeatedly mentions the two working parts of a successful start-up in 2022 -A tech and non-tech founder. So it's pretty evident that in the long run, both have to understand each other's jobs. While MBAs have already done a better job at teaching non-tech things to a tech person. I feel there should be some quick basic guide for non-tech folks to get a headstart understanding technology talks. This is my humble attempt at taking a shot to simplify tech talks.
Get the basics right
Every tech product in this whole world is made up of 3 basic things on a very high level. These things are the logical breakdown of the product and are not much difficult to understand, in fact, these tech terms are very common and you must've heard them before.
Frontend: For a tech product, it's usually how you want your end-users to perceive your product/service. It could be a website or mobile application. Generally, terms like UI, UI/UX (a term for fancy info-graphics and animations) go along with frontend.
Backend: Backend is the core business logic of your product. There is no visual representation of it because its mostly just a bunch of files containing lines of code. Terms like servers (live code running on a computer), APIs (communication endpoints that can trigger the logic)are used while talking about it.
Database/DBs: It’s the stored/collected data for/by your product. This is the most relatable part to a non-tech person because reading it makes sense :P There is a high probability that you will understand the product better if you start from Data. For most traditional database (also called Relationaldbs / SQL dbs) it’s almost as easy as reading an excel which you are very good at.
Understand the technology
These 3 things make up most of the tech products and all of them are written/implemented using special languages. There are thousands of these and they will confuse the hell out of you if you start googling about them. Simply put, it is the code written by coders to perform certain logic, fundamental components of which remain constants throughout languages but syntax may differ. Some of these languages are,
Backend: Java, python, C++, NodeJs, django, Springboot
Database: SQL (Oracle, Postgres), NoSQL (MongoDb, Redis), GraphDb (Neo4j)
If you hear any programming language in future, ask questions like function of the language ? advantages of using that language over others? and what is the learning curve (if you are from HR)
Start the Right way
Most probably, you are a product owner or business person who wants to understand the tech of an existing product or create a new product.
- Understanding existing Product: Start from the database, Once data starts making sense to you, it will help you understand how the data is used and modified in the product. Information architects can help you with a blueprint of how information is stored for the project and you will pretty much start relating things to the excel sheet. Take a functional flow (Ex. Login) and work your way outwards from data to logic to UI.
- Create a new product: Probably you are creating a product and you want to choose which tech would be the right fit. In this case, It would be better to keep a tech consultant/tech team with you while evaluating. Rule of thumb: More Whys you will ask, the better fit you will get. Start with what are your priorities — speed of delivery, mode of delivery, rich user experience, speed of execution, scalability, accessibility, and maintainability. Each of these questions to your tech team will give you different answers as to which programming language to choose and based on a balanced decision you can choose a combination of these technologies (tech stacks) which will work best for you. There are high chances someone has already used similar tech stacks which you can refer to.
I will try to create a series of blogs on this topic, to decode tech talks for non-tech folks, but do let me know things that you would want to understand and get resources for further your self-learning.