During my entire career I've mastered lots of languages like C, C++, Java, JavaScript, C#, Python and technologies like Win32, WPF, ASP.NET, MFC, STL, Boost and tools like GIT, Octopus, TeamCity, and more. Just enough to learn a new one thoroughly in a couple of days, what I actually do every now and then. I've been also paying lots of attention to UI and UX when creating software. Especially nowadays that it has become a very important thing. I have also received many awards in major programming competitions and was placed as a finalist in the National Programming Competition of Poland. Yes, I like algorithms and finding neat solutions to complex problems in general.
But as far as technical skills are really important, they don't guarantee the success. Like someone said the other day: "85% of your (...) success is due to your personality and ability to communicate, negotiate and lead. Shockingly, only 15% is due to technical knowledge.". So over the last few years I've been mainly working on my soft skills. They have really changed the way I work and deal with people. Great communication is crucial and this is where I pay most of my attention to.
Anyway, my open, direct and honest personality style is not for everyone. Some people do not accept it but we don't have to be friends and struggle with each other. So here is a list of my thoughts, beliefs and also expectations of other people (including myself) that I like to work with. The list allows to learn more about me before we start working together. If you don't agree with some of them, don't waste your time and go on.
- If I spot a problem I tend to fix it quickly. I am not a fan of procrastination. Pushing problems back only prolongs the existing pain.
- I have great attention to detail. I don't accept laziness and poor quality so I will give a list of changes to be made if you give me something unpolished to sign off.
- I care about my quality time. A good work-life balance is important for recovery and productivity.
- Talk to me. Notify about issues quickly. And be honest. I don't accept talking behind anyone's back or sweeping problems under the carpet. Always keep high-quality communication.
- Respect me, my time and my commitments. I'll respect yours. So when we plan a meeting, it must suit all of us. We are punctual and we finish in time. If you are going to be late, notify me as soon as possible.
- Remember important things, dates and promises you've given. I you have a bad memory, use notebooks, calendars, alerts on your phone - whatever helps you not to fail. If you already know that you cannot deliver on promises you've made - don't wait and notify me ASAP to respect me and my time.
- Be concise, clear and use plain language when conveying information. When receiving, confirm that you understood and you know what to do next. Otherwise, ask questions.
- Use common sense, especially when dealing with unexpected situations.
- Be nice, respect others, don't judge too quickly. I will reward you with the same.
- Be professional but have a great sense of humour and don't take life too seriously.
- If we struggle with each other and cannot do anything about it, let's split up. Work should be enjoyable, mainly by working with people we like.
- Practise some sport and eat healthy if possible. From my experience such people are happier, more efficient and easygoing. Working with them is usually fun and pleasant.
- We are humans and we make mistakes. But once you've made one, do your best to fix it in a way that all affected people are satisfied. It is, again, all about the proper respect to other people.