2023. April 15.

What is the difference between an expert and a professional? How does a responsible worker manage his time? Why and how to say no, and how to deal professionally with professional conflicts, tight deadlines, and other pressures at work?

These and similar questions are addressed in Robert C. Martin's book "The Clean Coder", in which the author shows what distinguishes a professional software developer from a "simple" coder.

The book is primarily aimed at programmers, but most of its advice is equally applicable to other employees in a corporate environment.

Deadlines are something that almost everyone has to deal with. Many of us also have colleagues and bosses, and stress and responsibility are not unique to software development - so almost anyone can take on board and practice most of the ideas in the book.

In this post, I have collected the most important and widely applicable tips, such as:

  1. What is professionalism?
  2. Self-development and practice
  3. Avoiding burnout
  4. How to say no?
  5. Passive aggression
  6. Time management
  7. Flow or no flow?
  8. Focus manna
  9. Creativity

What is professionalism?

The book draws a sharp distinction between “professional” and “non-professional” workers. It recognizes that although professionalism is a mostly trite term, it has one important characteristic: accountability.

Consequently, it is much easier not to practice professionalism than to practice it: these workers do not take responsibility for the results of their work - they leave it to their employer, their superiors, or their clients.

It follows that if you want to see your work as a vocation rather than a job, the first and most important skill to learn is apologizing. You will make mistakes. Everybody makes mistakes - it’s almost deterministic. But what is not deterministic is how you deal with those mistakes.

A professional takes responsibility for his actions and apologizes when necessary.

And the second most important skill: improvement. Apologizing is a necessary but not a sufficient condition - we need to ensure that we don’t make the same mistakes over and over again. Although the number of mistakes will probably never reach 0, it is our responsibility to keep moving towards 0 - it is our responsibility to improve.

Self-improvement and practice

Building your own career is your own responsibility, not your employer’s. It is not your employer’s responsibility to keep your skills marketable and thus attractive to the labor market. You may have an interest in it, but ultimately these are all your responsibilities: it is up to you to keep your professional skills up to date.

Some employers offer their employees books, online courses, training, or conference tickets. If so, be grateful! You’re in a lucky position, but this gesture (or lack of it) doesn’t take the responsibility off your shoulders - even if your professional development is in the company’s interest. It’s your responsibility to invest the time and resources to keep your professional skills up to scratch - not only for the benefit of your employer but also for yourself.

One more thing: professionals practice. They make sure that not only their knowledge is up to date, but also their skills and abilities.

Much of the day-to-day work is not practice, but performance. Activity outside of performance is practice. In performance, you can put to good use the knowledge and experience you have gained through practice.

There is no doubt that performance also involves gaining experience. The only difference is that working while performing aims to minimize mistakes, whereas working while practicing aims to discover mistakes. A professional is aware of the need to practice and makes time for it, whether on or off the job.

(Again, I should mention here that this advice is of course primarily intended for programmers, but I believe that it can be taken by people working in other creative fields.)

Practice makes perfect. Source: Sarah Andersen

Avoiding burnout

Just like building your career, avoiding burnout in your career is your responsibility. It is your responsibility to strive to create conditions that are sustainable for you in the long term.

This topic is only moderately discussed in the book, but I think it is an important aspect and strongly linked to the responsibility to practice. You may be in the fortunate position that your employer recognizes the importance of avoiding burnout and tries to help you with it. There are places where you may be given the opportunity to see a specialist, there are training courses on the subject, and there are places where overtime is frowned upon. But all this is just a nice gesture on the part of your employer, which does not take the responsibility off your shoulders.

So, how do you avoid burnout? Well, there are several approaches to achieve this. Let’s take a closer look at two of the most popular ways!

Specializing to combat burnout

The book argues that you should make time for exercise in your free time, approximately 20 hours a week. At first glance, this may seem like a lot, but the author argues that doing so will give you a level of knowledge, experience, and commitment to the profession that will give you confidence.

This effect is enhanced if we try ourselves in areas that are not currently relevant to our daily work but which are part of our profession.

It is important to emphasize in this approach that, regardless of the subject, we should avoid activities related to our daily work in this time period!

The book does not encourage you to work overtime, but to find a fun activity that relaxes and recharges you, but is still related to your profession. It stresses that 40 hours of your week should be about your employer - but those 20 hours should be yours, so it should be fun. It’s important to be stress-free and to see this time slot as an opportunity, not an obligation.

Having fun to fight burnout

Another - very different - approach is to take up a hobby that is in no way related to your daily work. Often, this hobby is the exact opposite of the way we work: intellectual workers often choose physical activities as a hobby, while physical workers often choose hobbies that require mental resources.

I thought it was worth mentioning the latter because I read in an article on burnout that an important correlate of modern-day burnout is that people tend to choose hobbies that they can profit from - be it money, fame, or professional skills. In other words, we often choose side projects instead of hobbies. Building our own YouTube channels, editing our own podcast shows, writing our own blogs, developing our own software, selling our own handicrafts, designing our own brand or personal cult. All activities that seem both creative and an activity from which we will sooner or later benefit.

The danger with side projects is that if they are not completed on time, they quickly turn from an opportunity into an obligation. If this happens, we will not be looking for relaxation after the daily hours of work, but for more work.

In an age where we are constantly being encouraged (directly and indirectly) by Elon Musk and Arnold Schwarzenegger to work when others are asleep in order to succeed, many people find it hard to relax. They feel anxious about every minute that is not “productive”. I myself tend to feel this way sometimes, but my experience is almost always that when I try to be productive every minute of the week, sooner or later I always end up feeling tired - and worse, I hate what I’m working on.

For all these reasons, it can be worth trying a hobby that you really love for its own sake, not because it adds to your professional development, your personality, or your wallet.

How to say no?

“Do or don’t do, but don’t try” - one of the most famous quotes from Star Wars is easy to misunderstand, but when interpreted correctly it is a very well-worded thought.

When it comes to teamwork, team members have to count on each other. They expect each other to take responsibility, that’s how trust is built. And that requires team members to commit to a task and say “Yes, I will do it, and if I fail, I will be responsible”. This is professional behavior.

Of course, you shouldn’t say yes to everything. Part of professional behavior is that when you judge that you cannot do the expected task (e.g. by the expected date), you do it:

  • You refuse
  • Repeatedly (!) report it to the person in charge.

There are situations when refusal does not work because your partner refuses to accept your refusal and keeps signaling to you that he is expecting you. He is trying to put pressure on you, forcing you to take responsibility for something you cannot. In this situation, the most professional behavior is to stand your ground and constantly and repeatedly (!) signal this to your partner.

The truth is that, although at first glance this kind of behavior may seem pushy and stubborn, it is in fact the professional attitude that a professional expects from another professional. It is the attitude that can be expected and built upon. A partner with this attitude has both a credible “yes” and a credible “no”. It is the attitude of one who does not try, but does or does not do.

Passive aggression

The least professional behavior is passive-aggressively agreeing to something you disagree with. This should be avoided at all costs! Passive aggression is nothing more than a combination of avoiding conflict and refusing responsibility. When a disagreement arises, you will - whether or not a compromise is reached - sooner or later have three choices:

  • Honestly get convinced, agree, take responsibility
  • You stand your ground, you refuse, you maintain conflict
  • You don’t want to take responsibility, but you don’t want to maintain conflict either, so you passive-aggressively agree.

Passive aggression is easy to recognize. Phrases such as “Have it your way, but I’m telling you upfront, it’s not going to work”, “You know you’re the boss”, or “Who am I to say?” are common.

Passive aggression is a selfish behavior to shift responsibility away from yourself. And avoiding responsibility, as we have discussed, is unprofessional.

Time management

The book also mentions that a professional manages his time consciously. The right strategy for time management may vary from one profession to another, but there is one common point that applies to almost all business disciplines: the meeting. There are two things to know about meetings:

  • Meetings are necessary
  • Meetings take a lot of time and energy

It takes time and effort, time and money. A professional employee is aware of the need for meetings and their resource-intensive nature and decides on his or her own participation in light of these.

You do not have to attend every meeting you are invited to.

It is not the meeting organizer’s responsibility to allocate your time. It is your responsibility. It is your responsibility to allocate your time as efficiently as possible - not only for yourself but for the team. This does not, of course, mean only attending meetings that are useful to you, but only attending meetings where your presence is important to the parties involved (including you).

Sometimes it is in the middle of a meeting that you realize that your presence is not needed by anyone (including you). In such a situation, a responsible employee will not waste any more time but will politely leave the meeting.

The best way to decide whether to attend a meeting is to make sure you know what the meeting agenda is. A professional will always include the agenda in the description of the meeting invitation, increasing efficiency. However, if you have missed this, it is your responsibility to check - so you can make an informed decision about your attendance.

Flow or no flow?

You’re probably familiar with the term flow, most often used to describe the loss of time, the sense of being at work in a relaxed, uninterrupted, dynamic way. For many people, the goal when working is to get into the flow, as time spent in flow is considered to be the most productive (and fun) time.

The author makes a surprising observation and urges us to avoid flow. He argues that time in flow is not nearly as productive as it seems. We perceive it as such only because we enter a state of meditation, which creates a sense of speed due to the loss of time perception. In this state, our attention is so focused on a single problem that we often lose sight of the whole picture surrounding the problem. We may actually be putting out more work (be it code, graphics, text, or whatever), but it is more likely to contain errors due to the narrowed view.

(Here it is important to note that the writer is again talking exclusively about programming. My guess, however, is that the above can be applied to other activities requiring creativity and an analytical perspective.)

He also adds that there are situations where time in flow is useful. And that is exercise (I would add, also any activity done for fun, as a hobby). Exercise should be both fun - to avoid burnout - and useful. Practice is the planned stage for mistakes, while day work is the stage for performance, where the goal is to get the number of mistakes close to 0.

And one more interesting thought about flow: the author considers one of the biggest benefits of pair programming to be that it completely prevents parties from getting into the flow. Since pair programming is a highly analytical activity, where a lot of communication is required, it is impossible to get into a state of self-absorbed meditation. Thus, in pair programming, you may write less code, but you will certainly write more accurate code.

Focus manna

Our ability to concentrate is a limited resource, what the author calls focus-manna. Focus manna is used when we work and recharged when we rest. Part of professional behavior is to allocate this focus mana responsibly and as efficiently as possible and to work when this resource is available in the highest possible quantity.

Everyone’s focus manna works differently, so it is up to each person to discover this for themselves. For me, example, I can focus best in the morning, so that’s when I’m most effective. To do this, I try to do my most resource-intensive and creative tasks in the morning and in the morning, and I try to schedule meetings in the afternoon. Others can really concentrate in the evening; for them, a different strategy is likely to be appropriate.

The focus manna used up during the day can be partially replenished. The way to do this varies, and it’s something you should discover for yourself. Some people sleep for 20 minutes (power nap), others meditate, and some go for a run at lunchtime. My experience as a programmer is that for me, relaxation is often a long, decision-free monotonous physical activity; be it walking, running, washing up, or doing the dishes. Doing mental activities for 8 hours is tiring and exhausting: but it doesn’t hurt to find a way to recharge your focus manna.


Creativity is the building block of many professions, so it’s worth learning how to tap into your creative side. In my own experience, there are two really powerful tools for evoking a creative state of mind:

  • Inspiration
  • Inspiration Inspiration

The author of the book also talks about how important inspiration is to him. Whenever we want to start an activity but don’t know how to begin, we should look around for similar genres. Sooner or later, inspiration will strike; sooner or later, you will have that “I’d rather do it this way” thought. It’s that feeling you get when you’re playing a board game, for example, and you start to get ideas of how else you could play it. Or when you watch a film and wonder what would happen if the same story were told from the point of view of a different character, or even in a completely different genre.

If you consume content in the same genre as your activity, sooner or later you will be inspired to create.

The other tool to trigger creativity is to gradually climb the Maslow pyramid. Maslow’s pyramid is a model that classifies human needs and helps us understand the drives behind our behavior. According to the model, needs are built on each other in such a way that the satisfaction of any given need requires the satisfaction of needs below that level.

Maslow’s pyramid helps us understand what motivates us.

It can be seen that at the very top of the model is the need for self-actualization, which includes, among other things, the need to experience creativity. However, in order for this need to be awakened in us, all our underlying needs must be met.

In practice, this can be done by making sure that our conditions are right for creative work. For example, we eliminate any little things that encourage us to rush our creative activity. Sitting hungry / in the midst of clutter / worrying about the future / without self-esteem, we are less likely to feel like creating than when we are satiated / in a tidy, beautiful environment / living in the moment / confident.

(Since its publication, Maslow’s pyramid has come in for a lot of criticism, with many calling the model flawed. In the final analysis, it should not be interpreted too strictly and treated as sacrosanct, because in some cases it may be possible to satisfy a level of need without satisfying the levels below it. However, in my own experience, it is worth keeping the model in mind. It has helped me more than once in interpreting my behaviour and feelings.) Book recommendation

If you would like to read more about professionalism, I highly recommend the book mentioned above: The Clean Coder by Robert C. Martin.

The book is packed with lots of useful tips and advice that programmers will most benefit from. In addition to the author’s advice, you will also read entertaining and instructive stories about how and how not to be a professional software developer.

Hi, I'm Gábor

I design and develop web applications using Angular, React, Node.js, Firebase and more. Wanna work together? Say hello: gaborpinter@proton.me