Like many today, I am a knowledge worker.
Officially, I'm a software developer or a full-stack engineer (or another combination of those words). I write code to do something and debug existing code manipulate flows or fix issues. Unofficially, my job is all about knowledge. Managing information is not in any job description but is an important requirement.
Because I keep my work separate from my life outside of it and it has different requirements, my personal knowledge management (PKM) system for work is separate from my system for life. In this post, I'm sharing my requirements, the PKM tools I use at work, and how I use them. I hope that this post gives you ideas to start or improve your system for work.
If you'd like to see my personal knowledge management system for my life, check out this post!
what is knowledge work?
Knowledge work is work that involves creating output based on information and knowledge that you've gained over time. Technically, everyone does this whether at or outside of work. However, knowledge work involves the very specific act of going through your well of knowledge to create something new.
Quoting from Wikipedia, knowledge workers are workers whose main capital is knowledge. Knowledge workers "think" for a living. Some examples of knowledge workers are marketing professionals, scientists, architects, and engineers.
When someone says "creative job", we think of painters or singers or designers. We don't think of engineers or scientists. However, knowledge work is inherently a creative field. It just doesn't involve the traditional acts that we consider to be "creative."
Thirty-eight percent of jobs are now designated as "managers, officials, and professionals". These are decision-making jobs. Another 41% are service jobs that often rely on your thoughts as much as your actions.
Morgan Housel, The Psychology of Money
"Knowledge work" is a relatively new term but it is widely spread. Soon after the introduction of the internet, the problem statement of most jobs changed from "get the most information" to "make the best use of information." Nowadays, as we are going into the perspective era, knowledge work is extremely valuable in every field.
what is personal knowledge management?
It is an important step in knowledge work but none of us are taught it. We start experimenting with it years later and take a long time to refine it.
Personal knowledge management is the process of collecting and organizing information that a person uses in their daily activities in a way that it can easily be searched, retrieved, and used to support their work.
The main action is collecting information but the point is to make sense of it, realize connections, and apply conclusions well. You can make decisions quicker by having the details in front of you instead of being scattered in your mind. A related term that's recently taken off is "second brain."
Personal knowledge management is important today because we have too much information to sift through. Our minds have not evolved to effectively handle so much information in a short period. We need a "second brain" to remember facts and save our best thinking so that we don't have to do it again.
While it is extremely helpful in managing lives—details on bills, dates, research on what we want to buy, etc.—it is an unmentioned requirement for knowledge workers. If you work with a lot of information, you must have a system to remember and manage it, even if you haven't heard of PKM. Recognizing it as a valuable process and making it a habit is crucial.
my history with knowledge management at work
As soon as I started my full-time job, I was bombarded with information. This isn't new—any new member is given a bunch of information and details to enable them to do tasks alone. My colleagues heavily used Notepad++ (on Windows) to take notes and I followed suit.
Notepad++ was easy to use. I could keep notes open forever, even without naming or saving them, and it was easy to start a new note. Because it wasn't searchable, I put almost all the information in one note and called it "running references." I made other files only when the information to do a specific task was too big.
My running references became long soon but it was helpful. It contained my quick notes on anything, links, reference tickets, and steps to do things. I even copy-pasted conversations that I might have to reference later. That note was the entirety of my second brain.
I started notetaking and managing information for work. I didn't manage information outside of work until a year later. I wrote notes and searched them several times a day. It was highly required when I was new to everything. I did not trust my memory to remember so many details quickly.
Once I got used to my work, I made fewer new notes and refined my existing notes. I didn't have to reference notes because I remembered a lot of the details. I started looking up tickets from memory instead of saving their links.
About a year into my job, I took on new responsibilities which required using a MacBook. It was my first iOS device ever and I was so confused with everything. I transferred my notes text files but Notepad++ was not on iOS! I was editing my notes on VSCode and trying to make it work.
I tried a few different methods and my current system is the best personal knowledge management system for me (for now).
my PKM requirements at work
My requirements have massively changed since the first year of my job. At that time, I was onboarded onto a ton of different tasks that required me to have company-specific knowledge. I couldn't Google those things and most of the information was interrelated. My mind was blown by the ten thousand different connections between things.
I had multiple "projects" going on that shared common knowledge. Anything I learned in one project could be used in something else I'm working on in parallel. (I often figured out something while analyzing one project that helped me prevent a mistake in another.)
Because of that, I couldn't neatly organize my notes. Everything was related. So, having one note with most of the information worked.
When I worked on a proper project for the first time—with a clear beginning and end, with not much history to reference, and no in-parallel work—I was floundering. My existing notes were not helpful and I didn't have time to come up with a new process. I could have managed that project much better. I realized that I need a proper system that is flexible and easily organized.
Since then, I've changed teams a couple of times and my daily requirements now are different too. I had to change my process with the same tools.
Here are the things that I need from my PKM:
- Store and retrieve links easily. Other than the regular stuff like HR system links, we've got so many links to keep track of. I don't know if it's similar in other fields but, as a software developer working on several different components, I've got too many links and portals.
- Categorize my notes. Now that I work on a "project" system, I need to be able to take new notes for certain projects, keep them together, and link them.
- Allow notes to be in flux. Many times, new projects require information from previous projects. I need to be able to move notes around easily.
- Search notes easily. While I often search for information, I mainly need to easily retrieve commands. Listen, I have too many commands to keep track of—Shell commands, Docker & Kubernetes commands, Concourse commands, Java and NodeJS commands, and I don't remember what else. Can I remember or Google them? Yes. But it will add an extra couple of minutes every time. I'd rather save the commands—for every application or context—and copy-paste within a few seconds.
- Organize my files according to context. My Downloads folder was my dumping ground for 2 years and wasn't organized at all. I need to be able to find things without remembering the file names.
- Remind me about things. I can get lost in my work and forget to do things. I also would like to postpone tasks and be reminded of them.
Despite having a few specific projects going on, my daily work is not easily split between them or delegated only for them. I work with members across teams on many small things and often need to keep a bigger context in mind.
Often, what triggers ideas or connections is not my task but the knowledge of different things going on in my unit whether they're related to my current work or not. They can't be easily noted because I don't know when something from a small piece of development done by another team can mean a lot to me.
I need my PKM to remember the obviously important stuff so that I can remember random things and focus on coming up with solutions, making connections, and contributing.
my personal knowledge management system at work
My PKM for work isn't too complicated. I maintain only a few tools that manage different types of information, not all of them are traditionally PKM software tools. I don't use any complex tools as I'd rather have a simple system.
notes
After a while of struggling with VSCode and getting annoyed (because I prefer using that app to write code, not type information), I looked up notes apps for MacBook and found Apple Notes. I didn't know it existed before that. Apple Notes's interface felt weird and unappealing but I tried working with it and haven't looked back since.
I use Apple Notes as my primary note-taking system at work. (I started using it outside of work only a couple of years later.) In fact, for those two years, I used it chaotically.
I never learned how to organize notes so it was a jumble of random information and I still put almost everything in my running references note (that I transferred into Notes). It didn't outright hinder me but I wasn't comfortable with it for a long time. I still wanted Notepad++.
Only after reading Building a Second Brain did I specifically organize my notes and decide on a process for them. Since then, my notes have been super helpful and give me a space to think, question, ponder, and come up with solutions.
Similar to my life notes, my work notes are organized using the PARA method—one folder each for Projects, Areas, Resources, and Archive. I use the Projects and Resources folders extensively. The Areas folder is mostly dormant and the Archive contains all of my old notes that are currently irrelevant.
Whenever I start taking notes for a new project, I create a folder for it. Once the project is closed, I move relevant notes to the Resources file and the rest to Archive. As I have multiple unrelated projects going on at once in different tech stacks, having a contextual separation in my notes is helpful. Whatever I need for a project—design, diagrams, meeting notes, references, commands, deployment details—is in its folder.
In my resources folder, I have a couple of notes (including my good ol' running references) pinned. These are two notes that I reference the most frequently despite what project I'm working on. Although I don't use the running references note often anymore—many of the details are outdated and my role is different now—I still keep it in easy access because sometimes, it has helpful gems.
The Notes app is very helpful because I can easily add diagrams/photos, links/embeds, and add code in a different format. My information isn't always text. One note can include steps to do something, an example code, a design diagram and several reference links. Formatting availability and easy of use make note-taking easy.
I don't note everything down. I'm more conscious of taking notes to trace my steps back in case of issues or to reference things for my ongoing projects. But I don't take notes of random facts that I learn during the day in conversations or ad-hoc tasks. I don't like to take notes if I don't see a clear reason for me to reference it later.
As my work doesn't truly end with the end of a workday—I'll still be thinking about the problems during my off hours—I sometimes come up with ideas during the weekends or while doing chores. I make notes on my phone and transfer them to work notes the next time I open my work laptop.
Because I don't take notes of everything, there is quite a bit of knowledge that lives in my mind. It's not specifically useful to me but people often reach out to me for such information. I help them through my memory and leave it to them to note it down. Despite having an abysmal memory, I remember a lot because I don’t have to remember whatever is in my notes.
When I need help, I usually look through our shared docs on Confluence first. There's a lot of knowledge in the shared documents and I frequently search and browse through them for help. Confluence makes documentation, organization, and searching so easy! It's such a good tool for shared knowledge management systems.
Even if my query isn't answered on the docs, I can get some direction or a person to talk to. All of us have personal notes like I do which doesn't reach the shared docs but much of it does. I use it as much as I can.
files
Because of the nature of my work, I don't deal with too many files. It depends on the type of project and daily tasks that one does. Sometimes, I have many files but mostly, I have few.
Until about 6 months back, my Downloads folder was a dumping ground. I would download everything and keep them sorted according to the latest modified date. I never organized them, never made folders, and hardly deleted files. Not deleting helped because I could find a random file years later. But I also couldn't find the required files easily because it was a mess. If I forgot the file name, it was as good as lost.
When it got atrocious, I finally carved out an hour or so of my time and organized the folder. My files are sorted in the PARA system as well. Again, the Areas folder is hardly used. I mostly use the Projects and Resources. Archive gets used quite a bit too because I search long-forgotten files more frequently than I expect.
The desktop is for my personal projects, the documents folder is for my Github repos, and the downloads folder contains everything else. The contexts are well separated and I don't have to hunt for things as much.
In the Finder toolbar, I have shortcuts to three folders that I go to frequently. One is my "notes" folder which contains important reference files (templates, old notes, SQL scripts, PDFs, etc.). The other two are folders that I frequently make changes in for my tasks. I made shortcuts because the latter two take way too long to get to otherwise because of the directory structure in Git.
There are colours and labels that we can use somehow in MacBook but I don't need them. Most of my work is done in code editors like IntelliJ, Eclipse, or VSCode so I mainly need a proper structure only for reference files.
bookmarks
It's nowhere close to a traditional personal knowledge management tool but browser bookmarks are so helpful! Don't write them off until you try them. Not all of my colleagues make use of it but there is a clear difference between the ones who do and the ones who don't.
As I mentioned before in my requirements, we have way too many links to keep track of—build links, Git repos, shared folders, excel sheets, Jira boards, multiple portals, and more. It's easy to work without making use of bookmarks if one is restricted to one or two projects. But if there are several different projects and they don't "end" because they have to be maintained, saving links saves time.
I have around 30 links bookmarked which are the most important. Some others are brought up by typing from memory. I used to have folders of bookmarks in my Windows laptop but, because it allows me to save more, I was bookmarking more than necessary. It led to a lot of stale links and became a mess.
Now, I don't use folders. I might start again only for a couple of types of bookmarks. However, I want to limit myself because not using folders has helped me not to go overboard. People come to me asking for links and I have them handy. I don't need more bookmarks yet.
My browser bookmarks are a big part of my PKM. It makes my work so much easier and saves me time.
reminders
This isn't technically a "knowledge management" tool but it really helps me stay on top of work so I'm mentioning it.
Although I have a MacBook and use the Apple Reminders app outside of work, I don't use it for work. They won't sync to my phone as I don't log into work accounts on my phone. I can't set a reminder when I'm not on my work laptop.
Hence, slack reminders. We currently use Slack for our communication and the app has some really helpful features. The reminders feature on Slack is convenient. I can set reminders through the app on my phone. I can ask it to remind me about specific messages if I want to postpone tasks or reply later. It's easy to use too.
Whenever I think of something that should be done later, I set a reminder. I use the feature very often. Sometimes, I set reminders for weeks later. It helps me stay on top of all my tasks.
It also allows us to set reminders for other people so I can say "remind @so-so talk to me on Thursday at 2pm" and it will remind that person! We can set reminders for channels as well. It's useful if the entire team has to be reminded of something like monthly activities.
Slack's reminders feature is an underrated tool. One of my colleagues didn't know it until I told him a few days back and he's been using Slack for two years! More people need to know about it.
Unfortunately, it looks like I won't be able to use Slack after a while so I need to find alternatives for setting reminders. I'll be looking for options soon. If you have any suggestions, let me know!
miscellaneous
I don't use a task manager for work. I tried keeping one in Notion for a while and stopped using it in less than a week. Creating daily tasks doesn't make sense for my type of work. The ad-hoc stuff can't be planned and the planned tasks are too big.
We already use Jira to manage tasks across teams and I have tickets/tasks for myself on it so I don't need another way to track tasks.
Thankfully, I don't get a lot of emails so I don't need a system to manage them. I used to get a ton and set reminders for myself about them or made notes. Now, it's minimal and I infrequently have to take action on them. Every morning, I go through my emails for 5-10 minutes, go through messages on Slack for about 10 minutes, and dive into my task.
The calendar integrated with my email handles meetings and events. I get reminded about them and it's easy to track them. I don't have to create a system for them either.
endnotes
All organizations have some digital organization software that can be used by employees to stay on top of things. However, each person has unique requirements and the shared system can only do so much.
It's up to each of us to build systems to handle whatever we need so that we can do our best every day.
My personal knowledge management system at work has a big impact on the way I work and present myself. It is one of the reasons why I'm good at my job and, if I can say so myself, am known as a person with a lot of knowledge. It allows me to do things well and get better opportunities.
I make sure to take notes and set reminders for action, not only for reference. All the knowledge I save is with an idea of where I can use it in the future. It may not be helpful immediately but it can be a gem several months later.
If you're a knowledge worker and don't already have a PKM for your work, I highly suggest creating one. It will take some time to explore tools and create a fitting process but it is worth the effort.
My personal knowledge management system is an example of how a system can be. Feel free to take pieces from it for your system and build on it.
If you'd like to dive into it more and learn how to create your PKM, here are some helpful books, articles, and videos on different personal knowledge management methods and tools:
- Building a Second Brain by Tiago Forte and The PARA Method by Tiago Forte [books]
- How to Take Smart Notes by Sönke Ahrens [book]
- How to Keep a Commonplace Book (and Why You Should)
- The 4 Levels of Personal Knowledge Management [article]
- A beginner's guide to the Zettelkasten method
- A list of good personal knowledge management software [article]
- How I take and Organize Notes as a Software Engineer
- Mise-en-Place for Knowledge Workers: 6 Practices for Working Clean [article]
- Knowledge Management for Software Developers
Information is always in flux, and it is always a work in progress. Since nothing is ever truly final, there is no need to wait to get started. The sooner you begin, the sooner you start on the path of improvement.
Tiago Forte, Building a Second Brain
chat with me!
Are you a knowledge worker? Describe your work to me! How do you keep yourself organized? Do you have a knowledge management system? What tools do you use? Do we have any in common? Tell me in the comments!
Wow, this was a lot and since, no shame in admitting that, we work in two different fields I passed a great deal of my time reading and nodding but not knowing a good chunck of some features you were talking about. Still, it was deeply interesting to read. And let me tell you, I get you on Notion. I think it's a very useful tool but not for daily tasks or keep things organized.
For example, I would find extra stressfull to check Notion for study or daily activities. And I find incredibly stressing how, for example, you cannoit schedule tasks to renovate or autodelete once their time comes. For other things, like keeping an archive or working as a sort of cloud archive, it's great. I use it for blog purposes or to keep track of my reading. For the rest, I'm a very paper kind of person and so far I can still rely on a basic agenda
I'm glad you enjoyed reading the post even if you couldn't relate, haha. Oh yeah, Notion is flexible but doesn't have a few key features. No matter how much apps try to be everything, it's hard for one app to do everything that everyone wants. In the end, we go back to simple to-do lists.
I love OneNote because I can organise my notes so well. I also have a bad tab addiction in my browsers, I recently discovered groups of tabs and things are a bit less overwhelming but I still have 4 windows open with between 15 and 40 open tabs each. Restarting my computer makes me anxious in case they don't come back. We also use OneNote in shared folders to share notes between collaborators which us great. We've had confluence in the past (hate it) and internal webnotes (size limits), but I prefer OneNote.
I only use VS Code for coding too. I like to use the best tool foe the job rather than one tool for all jobs.
I saw the group tab feature but I'm studiously avoiding it so that I don't keep tabs open for ages haha. We have Confluence but I'm often annoyed with it but gotta use what the company uses.
Agreed! Better to use the best tool for things instead of a tool that is a haphazard mix.