Ballmerpeak devblog

Software development, related stuff and others

The "Successful" software development leadership method: Essence-oriented development?

January 24, 2018 — Richárd Thier

Agile answers a lot, but what we need to keep is focus on doing what is to be done. Whenever we do not do what is the necessary or lose focus on the key aspects, we lose focus on success of a project.

After being in many projects, I kind of feel Agile, Scrum and such are bad words and altough having mostly good in their approach there is something that should be having an ever greater impact: the essence.

The leadership style I am talking about should be better called "minimal feature - maximal essence development". In through that process, the maximum focus is on the relevant work to be done, the "essence" to add - and of course the ability to not only add this essence but to ship a product (let it be open or closed source) that this essence is incorporated into.

Most of the scary stuff are automatically handled with such a mindset: overdesign, underdesign, agility, team-spirit, susteinability, MWP, measure vs. estimate, business value increments, iterations, proper - but not unnecessary - documentation, etc. etc.

Tags: leadership, methods, management, minimal, feature, maximal, essence, oriented, development, software, agile, unorthodox

Being an intraprenour

April 05, 2017 — Richárd Thier

Some would say it is easier than being an entreprenour. In many cases it is not. After being one for the latest years I can tell it is having both its upsides and downsides compared to the other alternative.

Some of the upsides:

  • You have an access to an already existing human network.
  • You have immediate access to human resources in case you need immediate growth.
  • You certainly reside in a company that is stable-enough to invest in what you do.
  • You and the company both risk much less - it is not a binary game of doing great or nothing.
  • You can grow in your skills of selling things to people who do not have much imaginations :-)
  • You get a salary

Some of the downsides:

  • You are in an entangled environment with no shared vision with you - but with a complex system of the company.
  • You will find obstructions for making the right decisions - you can know it for sure, yet you cannot act always in the way that leads surely to greatness.
  • You reside in an established environment, maybe valuing different kind of human resources that you would optimally need.
  • Even worse: sometimes there is a quantity vs. quality clash in your and the company needs of human resources
  • Even much worse: if you are good-enough technically, you are considered to be a human resource and other departments lobby for getting you back
  • Others might try to "shield" you from the outer environment - not knowing your preferences about it.
  • Others might hold you back for their own fears and lack of bravery that optimal decisions need.
  • They think you get your salary not because you will make a world-wide known company out ouf yours, but to do what all others did earlier.

The latter is actually the most worrysome: If you indeed act too much according to the present and not the future, nothing will ever change. This can get as far, that even when getting real work projects, those who think they support you will still use a defensive approach ruining everything. The weird question is the following though: Do they really think if I would do what they want is when we would "get there to do that"?

Let me explain what they feel, they are giving away salaries for:

  • Because I am a human resource and they already know how great I do JavaEE programming (sic!) by having surpassed seniors while being junior in the past on one big project and later on not failing.
  • Because of random HR charts that they can view on "allocation meetings" show they have a brick named like me in the java department.
  • Because they see that I can write the technical documents of a tender, put it together in the way that it conforms Frascati and real R&D so that money support for our projects can be won from not their own pockets in a way that stabilize the company more than just my ideas coming through.
  • Because they dream about becoming the next prezi, facebook, whatever - and staying on the earth they see that we can get some low-hanging-fruit even though we "never" get to be that great. Actually they know for sure we will never grow great, but they see potential in the low-hanging-fruits and being close to the fire of upcoming innovations.
  • Because the things I do helps to catch people for the more usual departments. So basically they know what they get out of me in boosting HR and promotions.
  • Because I used to be very much dominant even in the presence of owners, CEOs, CTOs and whatever people. Basically they just feel some bravery, yet they do not understand its source-
  • Because I am not completely the one asking dumb questions about the more financial sides of their management things. I used to see what attendants of a complex situation want when they do not say that - or maybe not even aware of.
  • Because I am honest and loyal.
  • and lately: because I have met a lot of people and made it possible for them to be even in some major Hungarian media channels. This helps all departments and they would never reach this level of advertising (for "free" - of course it is not free but payed in our salaries from their viewpoint).
  • and of course because: I can easily go away from them anytime I want.

Now let me explain what I think I should get a salary for:

  • Because of knowing without "fantasmagoria" what will and will not work in areas that no one apply yet, but is so cleanly there.
  • Because I know what should be done to get as awsome as prezi, facebook, etc. Not because of my skills! I do not consider myself to be awsome in technical sense at all because I know those who are indeed great! With friends working at google, or places for "real" 3D programming, "real" AI, and other things it is sure I am mediocre - or maybe just above that. Neither I have all the knowledge of JavaEE (even though I can work anywhere I think as "senior enterprise whatever"), neither I am a topcoder red star in algorithms and neither I am the guy who knows all the numerical analysis, neural networks or the latest GPU architectures for 3D API design.
  • I consider myself an agile coach who is a developer and a man who knows what to change and how things can be changed with above avarage methods that lead to much more above avarage results. Actually most of my creativity is coming from that gap that I have in my skills and differentiates me from those who can get red in topcoder: I do not have my time to work out a killing algorithm for this or that so I choose to change the world so that great things can be done only by using my "above the avarage" - but not awsome - skills. Sometimes even with avarage skills when I am lucky. It is like cheating the system by doing those things that people with no deep understanding does not see and people with too deep understanding does not need to consider.
  • What I know for sure is that for being great you need those who can do miracles. I can tell them from the crowd so easily as I always like to be friends with them. If you put together people like that, they go deep inside the code and maybe produce awsome results in depth that no one can use, but I have hard time to comprrehend. Still I can do it and communicate with someone who is a top coder and have a red result in algo competitions as I really do value what they have, also I value what those people are having who are into programming language semantic structures and design plans, the most complex applied math or hardware engineering with low level optimized code.
  • I think what counts is to build this team of awsome man... that is my biggest job: to somehow get there and make these people meet and work on things that are doable by me, but doable much faster and much more efficient and more creatively with them. Then we can make miracles and grow great.
  • I hoped they pay me so that I can make them great, and me being able to work technically is just a side-effect... In reality our view on this is really different.

I am an upper-mediocre programmer, a good tender writer, good at understanding forces behind each stakeholder and possibility waves of the world and maybe good at understanding agile properly and I can learn to really fast to be above avarage in any field - but then I stop there and I usually cannot get great. For me the creative department should be an elite group of very smart man that we can get more cheap than stakeholders actually think and if we would have this, there is no question that we can get there. Now I have myself and some collegues who are not at all optimal for this kind of work. They became usable as I tend to make myself usable too despite I am not great - but imagine what we could do if we would adhere to the original plan?

Actually sometimes I feel like I should build this on my own. A castle that is only mine is a place where I would not feel that I am contrained by anyone over me who does not understand this all. They think I am the person that is technically great and how wrong they are!!! Okay I am not bad, but far from what we should have! I am trapped because my ability to create better results than my skills would do in most cases and they think they can give me a team where everyone is less than me and I am kind of a technical leader??? What a mistake! I want to lead - sorry, not even lead , but coach - people who are having better skills than me so that we can be great. It seems that they think I will be on the top of the pyramid, while this is not a pyramid, but a big iceberg where I will reside on the bottom of the tip of it to build upwards and reach trough the water level in the end!

The bad thing is that I find no way they will understand this. They are trapped in their own minds and ideas - you can say: preconcepts. I think what I have is still valuable and of course whenever I feel I cannot act optimally because a CEO or owner, CTO, a project manager or whatever person are placing obstacles in my way... then of course I feel bad... I think they pay me for making them great and then I cannot do my job properly because of them...

In summary:

I feel it too many times that we are in a position to act in the most optimal way for being great and we do not make a step in that direction because of the company that is not mine is not as brave as I am. When you are an entreprenour, what separates you from optimal steps is the environment. If you are an intraprenour, you are in a position where you have all the possible resources to realize a vision in the right and easy way - but what you have to fight is coming from the company itself: without you they would never ever touch these things, so everyone who is not you basically view this with some caution. In my logic, being an intraprenour should be a faster way for doing great - by merging the good attributes of an already existing company and a startup with a great idea. In reality: I find it sometimes much harder as there is nothing more morally devastating, than lack of faith within the company: you will meet the press while knowing there are people not believing you and you will hold presentations with this knowledge. When you are doing things on yourself and you choose right people you are not alone like this, but here I feel lonely. Technical personnel think I am here to do technically great solutions and management personnel think the same. You are warned to take my steps and do the same. It is not so healthy and is not easy at all...

The funny thing is that even despite all these, we can even get media attention, despite things are so far from optimal. Just I hope those who make these obstacles all through our journey will not think their fears helped in any way or shape haha... I wish what we do can help my nation and Hungary - I do not want to go for personal success and do not want to "lead" people, but it seems I have to be dominant in many situations otherwise things just go into the wrong direction and nothing happens... I want innovation everywhere and people who think alike and are great in their skills - greater than me! ;-)

Tags: self-esteem, intraprenour, hard, human resource, hr, ar, vr, hololens, media, multi-functional, people, bosses, leadership, agile, fragile, big, mistakes