• Engineer

What software engineers should learn from Iron Man

Steve Rogers (CA): Big man in a suit of Armour. Take that away, what are you?

Tony Stark: Genius, Billionaire, Playboy, Philanthropist

More than the above Tony Stark traits what I love the most about Iron man is the ‘engineer’ in him – the trait that creates Iron Armour – Mark 1 from the Cave to the nanotech armors or the artificial intelligence Jarvis to Friday. What the character was able to pull off might look only possible in Marvel Cinematic Universe but if we look closer – he is just doing the basic things right! I have listed down a few things that every software engineer need to learn from Iron Man. Grab a donut and let’s get started!

1. Manage the software assets properly

The first and foremost thing that a software engineer need to do when he get an idea/start a project is to create a repository for it – a place to manage the software assets. Be it a public/private based on the nature of the work, a repository is important. This not only backups up the data but also helps to backtrack your work, document the progress for future continuity, share information with others, work collaboratively and treat it as one source of truth.

And its a no surprise, Tony Stark asked Jarvis to create a new project in his database before creating his official Iron Armour – ‘Mark II’

2. Automate redundant works

We all end up doing the redundant and unproductive work day in and day out. Sometime we might not realize them and most times it slows us down. An important skill for the software engineer is to identify those redundant works that could be automated and then automating it. In software engineering, there are lots of room for automation, some like automated unit testing, automated builds are already identified and a lot of solutions out there for this but still, we can do a lot more than this. All we need to do is ‘identify’ and ‘automate’.

This could be as simple as removing your suit.

Iron Man's engineering Automation

3. Work agile, learn from mistakes

Agile – Move quickly and easily.

There has been a lot talked about ‘being agile’ in software development. It all comes down to how we plan the execution and plan it around the feedback/mistakes/experience that we have gained. This makes sure we make one step at a time, make it quick, make it safe and more than anything make a right move.

The best example is how tony stark was able to make improvements to his Armour from Mark II to Mark 85 and how he learnt from his mistake and made sure he corrects them. One such moment wherein Civil War – Rody was hit by Vision on air when flying Iron Man’s make and hit the ground in a free fall and fracture his lower body, Iron Man then made sure he integrated a parachute in his next armour that he gave to Peter Parker.

4. Intuitive and Easy to use

Software engineer/developer should go for ‘Easy for user’ approach – No one reads user manuals\maybe like reading user manuals. If a user can’t figure out how to do it, he will figure out other products and move away. All the successful product have put user experience as a priority behind the design which keeps the users tied down to their product. Before developing the solution we need to answer 3 questions – Who is my user? What is his problem? Why should he use my product?

This will help your users be productive and be self-sustainable – Here is what Spider-Man has to say about the Iron Mans creation.

5. Document the work

Well! Documentation is considered as one of the boring work in software engineering – Software engineer who starts mid of a project as an only developer and given with a code with zero documentation on what it does will know the value of documentation. Lack of documentation makes it nearly impossible for others to take up something that you have done – If you want your innovations to survive and evolve, then document it for others. Writing down things in simple terms on what is the design, structure, and details of the code\project, will greatly help your successors.

Remember! if Howard Stark (Tony’s father) hasn’t documented his idea, Tony would have never invented a new energy source element πŸ˜‰

6. Don’t let it go without adequate testings

Quality of the product defines the brand – which comes down to the quality of testing that we do. Always, the bugs that we let out will come back and haunt us in worst times and lowers the confidence in our brand. Code Review, Peer Review, Unit level testing, Integration testing, system level testing, Regression testing, Sanity testing, Acceptance testing and what not – you can do whatever you want and whatever way you want, but the end of the day make sure the product is bulletproof.

What if Iron Man didn’t do his testings properly?

7. Be flexible with the technology of choice

Software engineer should be flexible with the technology of choice. Needs are growing so rapidly that drives the technology – there is no one technology fits every problem. It could be tools that you use, programming languages for your code or a process that you follow – be ready to ditch things that you are used to, in order to invent a better solution. You need to come out of your comfort zone and this involves continuous learning – This would be a hard thing for us but not for Iron man, yet it is still worth it!

Thermo nuclear astrophysicts

8. Help the community/Build a team

Grow the community so the community can help you back – You can take any successful products and there will always be a developer community/user community as a backbone of it. We learn more online than we learn in our classes, this was made possible by people who are contributing from what they have learned. So, It’s our responsibility to give back to the community that helped us grow.

In a team environment, if you invest time in growing your team then you will get back in terms of quicker and quality results. Always grow a successor to you who will have your back and take things from where you left.

Successor of Iron Man

9. And never miss having fun!

Even if things goes bad, never miss having fun because…………………………………… Its nice to be happy πŸ™‚

Tony's dance
FOR you { IF iron man fan AND software engineer { share it!! } }

//full of syntax error but who cares!!

Loading
Follow Boring Engineer:

Software Engineer

Industrialist and CEO of Stark Industries, once a Patriotic Winter Soldier, After an Accidental Gamma Ray exposure became a strange magician. Talented at archery and swinging between buildings. Popularly called as Son of Odin or King of Wakanda!

2 Responses

Leave a Reply

Your email address will not be published. Required fields are marked *