Welcome to Siva's Blog

~-Scribbles by Sivananda Hanumanthu
My experiences and learnings on Technology, Leadership, Domains, Life and on various topics as a reference!
What you can expect here, it could be something on Java, J2EE, Databases, or altogether on a newer Programming language, Software Engineering Best Practices, Software Architecture, SOA, REST, Web Services, Micro Services, APIs, Technical Architecture, Design, Programming, Cloud, Application Security, Artificial Intelligence, Machine Learning, Big data and Analytics, Integrations, Middleware, Continuous Delivery, DevOps, Cyber Security, Application Security, QA/QE, Automations, Emerging Technologies, B2B, B2C, ERP, SCM, PLM, FinTech, IoT, RegTech or any other domain, Tips & Traps, News, Books, Life experiences, Notes, latest trends and many more...

Thursday, February 27, 2020

How Google works?

How Google works?

with respect to Engineering Culture, Decision Making, Innovation, Strategy, Hiring and Communications, etc

Random important script on Decision Making below,

DECISION MAKING

The decision-making process, the timing, and its implementation are crucial as they can set precedents.
  • Use data to drive decisions: Slides should just contain data required to run the meeting.  Data is best understood by those working with the issue, so trust the insights of Smart Creatives who are working on that issue.
  • Consensus is not unanimous agreement: Consensus is about rallying people around the best idea for the company. Encourage Smart Creatives to voice strong opinions through solution-oriented open debates. The right decision is the best one, not the lowest common denominator everyone agrees on.
  • Manage the conflict: This conflict-based approach must be managed by a decision-maker who sets a deadline, runs the process, and breaks ties. End debates when they are no longer valuable and shift towards building a consensus over the decision.
  • Make fewer decisions: CEO’s must make very few decisions. These should focus on core issues like product launches, acquisitions, and public policy issues. On other matters allow leaders to arrive at conclusions and intervene only when it’s a very bad call.
  • Use convening power: For critical decisions, leaders can use their convening power to hold regular meetings, even daily ones if necessary. This signals the importance of the issues and makes decisions happen.
  • 80% time on 80% revenue: While it is tempting to focus on new innovations, making mistakes in the core business can be fatal to an organization. Spend 80% of time focusing on products that generate 80% of the revenue.

References:


Wednesday, January 8, 2020

Leadership: Key elements of Judgement

As a leader, everyone has to take a lot of decisions (based on judgemental calls) and then claim your experience whether it could be success or failures. You see yourself that you are part of that journey... Always, good judgments are the best for you like success stories! So, what are the key elements of judgment, how one can practice making a good judgment methodologically?

  • The first step, Learning the problem - Listen attentively, and Read critically
  • Have Trust - Seek diversity, and not validation here
  • Mix up your experience - Make it relevant, and don't narrow it down
  • Detach the clutter, and then Challenge - detaching your own biases, and accept more viewpoints from various advisers, role-playing, etc while challenging
  • Look for Options - Question the solution set offered, and challenges; see if any risks here, and how to mitigate them
  • Finally the Delivery - always factor in the feasibility of execution by how and by whom
In Summary,
Leaders need many qualities, but underlying them all is good judgment. Those with ambition but no judgment run out of money. Those with charisma but no judgment lead their followers in the wrong direction. Those with passion but no judgment hurl themselves down the wrong paths. Those with drive but no judgment get up very early to do the wrong things. Sheer luck and factors beyond your control may determine your eventual success, but good judgment will stack the cards in your favor.

Wednesday, January 1, 2020

I know, you know about Pyramid; but what is "Test Pyramid" then :)

A happy new year to all the readers out there, and yet another new decade with the 20s, and wish you all be happy, peaceful and healthier than ever before to take up challenges that are waiting for you in this decade. I started blogging a decade back and when I reflect on this irregular hobby, I feel great about it as time passes away so fast and this blog is of 10 years old now:)

Okay, I know, you know about Pyramid; but what is "Test Pyramid" then :)

You would be getting to know about the Test Pyramid only if you are serious about the Test Automation and how much you can actually do the test coverage with your automated testing for the developed software.

If a developer is writing the tests by himself for the piece of code/software that he has built: those are the unit tests as part of the Unit Testing. And if he is thinking about doing some sort of automated tests for testing the integrations with other services, then that would be the integration testing or services testing. If he is looking for even broader testing scope of the overall system, then that would be the End to Eng System Integration Testing. Even after all these, sometimes, he has to manually test the system to how it is working and those are nothing but the Manual Testing.

With the above in mind, Let's see what is the Test Pyramid and how it would look like in the below picture, and keep in mind that the time spent and the costs involved are more from bottom to top, and the tip of the peak at the pyramid comes with the manual testing(that we have not discussed above while providing the context).



So, what is your take on how much we can cover from the test pyramid? It is completely up to you and your engineering team on what are your priorities and how you wanted to see the return for the time and cost that you have spent on all the layers of your test pyramid.

Reference articles:
https://martinfowler.com/articles/practical-test-pyramid.html#TheTestPyramid



Saturday, November 30, 2019

Quite Interesting: 12 Steps to Better Code... and still valid!

Quite Interesting: 12 Steps to Better Code....and still valid!

It has been two decades or so, and this so-called "Joel Test" is still valid for the current situation of software development engineering practices

The Joel Test
  1. Do you use source control?
  2. Can you make a build in one step?
  3. Do you make daily builds?
  4. Do you have a bug database?
  5. Do you fix bugs before writing new code?
  6. Do you have an up-to-date schedule?
  7. Do you have a spec?
  8. Do programmers have quiet working conditions?
  9. Do you use the best tools money can buy?
  10. Do you have testers?
  11. Do new candidates write code during their interview?
  12. Do you do hallway usability testing?

Source: https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/

All the above 12 criteria are valid except 5&6 based on a few situations like business demand or if-it-was-working then lets-not-change-behavior :)