javascript
Sign in to follow 's advice will appear in your account when you log in. Follow specific Community Members and never miss out on their views and insights. Build a group of Members who you want to listen to.
Email:       Password:  
Don't have SiliconIndia account? Sign up    Forgot your password? Reset
Close
Ask Raja Bavani for Advice
If your advice request is relevant to other Community members, our Editorial team may choose to send this request to all Experts to attract a wider range of answers and share them with the Community. Rest Assured, we will protect your privacy (unless you recommend otherwise).
Advice Request
Raja Bavani
Raja Bavani

Raja Bavani

Technical Director

MindTree

twitter
facebook

Raja Bavani is a member of:

- Expert
Decisions That Mattered
Let me share two of them with you.

I
worked in the US during mid-90s. I decided to return back to India
because of personal reasons. I moved back to India in 1999 and got an
opportunity to work on Product Engineering and Outsourced Product
Development.

Later, I decided to specialize in something that
could increase the relevance of my skills and experience to my
professional life. This is when Agile Software Development and Agile
Methodologies were becoming popular. IT organizations realized the need
for Agile experts or evangelists who can nurture and promote Agile
adoption. I spent several years in implementing methodologies based on
iterative and incremental lifecycle such as RUP, XP, Scrum, etc. This
experience was very enriching.
The Turning Points
During the initial years of my career, I was part of a small team
that went through an elaborate training program on Relational Databases
and Oracle RDBMS. This training program was conducted by the trainers
from Oracle Corporation. It helped us understand the implementation
aspects of Relational Model and relate it to business solutions. It
helped us think broader as well as deeper about data models and
architectures. For many of us who went through that experience, it
continues to remain a major inflection point.
Work and Role: Then and now
I used to manage project teams and major accounts. It involved
responsibilities that fall under project management, customer
management, team management, etc.

At present my focus is on organization wide Agile adoption.

I am involved in:


  • Playing the role of Agile Evangelist through activities that directly contribute to internal and external evangelism

  • Catering to organizational learning needs for Agile adoption by implementing competency development programs in Agile

  • Coaching project teams

  • Working
    with business leaders to promote the benefits of Agile methodologies,
    and e) working with a team of process specialists in implementing Agile
    or Lean processes at org level.
Changing Days: Lessons Learnt
When I started, IT professionals had to deal with a limited set of
platforms and technologies. UNIX, C, RDBMS and Local Area Networking were
the niche areas. We had adequate time for self-learning and
experimentation. Some of us had the luxury of spending weeks together in
learning something new. However there was no Internet during the
initial years. We had do timeshare on limited resources - both
computers, and printed books or manuals. We had limited opportunities to
work on real-time systems or production systems of large enterprises.
We used computers for software development only. A vast majority of us
were not the users of applications and products. There were no desktops
at home.

Nowadays the scenario is different. The number of
platforms and technologies has increased. For aspiring professionals and
learners, resources are galore on the Internet. Interestingly a vast
majority of software engineers are end users too. They use several
applications and products. Having a home computer with high speed
internet connection at home is a common phenomenon these days. However
there are other challenges.For example, the daily commute hours of
professionals has increased significantly over years. Work-life balance,
a term that was not very popular those days has become very critical to
keep up with the demand of personal and professional life.

When I
started my career I was involved in developing applications that were
meant for managing National Games across sites. Also I was involved in
implementing the first computerized evaluation system over Wide Area
Networks. They were challenging projects too. These days, programmers
get to work on projects that involve high complexity, scalability and
data volume. For example, at Mindtree a team of engineers built the
technology engine for the worlds largest Identity Data Management
project. As you know, I am referring to Government of Indias Aadhaar
(UID) project.
Trends to Watch Out For
Convergence of computing devices and Cloud Computing are two major
trends that I do see. Over the past decade we have seen a set of key
influencing factors (http://www.mindtree.com/sites/default/files/resource_center_files/sdtimes_10_top_influences_0.pdf).
These factors have created a positive impact on the industry.

On career stand point, such trends mean two things:
1) renovation or transformation and
2) innovation

Organizations
need to undergo adequate transformation in order to accommodate such
trends. Focused investments or reorganization are two examples. For this
to succeed, we need to learn, adopt and anticipate challenges. The
challenges of IT professionals during the 21st century are quite
different and multifold because of factors such as globalization and
technology evolution. In order to face these challenges, 21st-century IT
professionals (www.cutter.com/offers/forceofhabit.html) will need to transform successful practices into habits so that these practices become second nature.
My Advice If You are Starting Out
As I said earlier, learning is a continuous process. The ability to
learn and adopt multiple technologies and platform is very important.
That is necessary to become a wholesome technical leader or technical
architect. In addition to technical skills, soft skills such
interpersonal skills and team skills are very critical. One has to be
emotionally intelligent in order to effectively manage complex
situations. Developing business skills, customer management skills are
very important too.

When you work on any project, you spend the
initial few months in learning and the next few months in performing
tasks of low or medium complexity. It takes adequate time to become a
contributor in your project. This is when you become a go to person and
start helping or mentoring newly inducted team members. This is not the
end. One needs to master the domain concepts and implementation
techniques specific to a project in order to suggest valuable
improvements that can provide benefits to customer. Such benefits, for
example, can be in terms of enhanced user experience or increased
performance or reduction in maintenance cost. The objective of working
on IT projects must not be restricted to gaining knowledge and offering
what is expected on a daily basis. Professionals need to commit
themselves to go beyond that.

There are several books available
in the market for young as well as experienced professionals. I
recommend the books Go Kiss the World and The Professional written by
Subroto Bagchi.

Link to The Professional http://www.mindtree.com/subrotobagchi/the-professional/
Link to Go Kiss the World http://www.mindtree.com/subrotobagchi/the-book/
Must Focus Areas For the Future
I believe in building the basics. Programmers need to have a clear
understanding of Software Engineering concepts such as
Object-Orientation, Design Principles, Programming Principles, and
Design Patterns. Also they have to be disciplined enough to write high
quality code instead of making quick fixes. Code Refactoring is a
technique to improve the structure of the code without changing its
behavior.

When a programmer builds strong foundation in these
areas, it becomes easy to catch up with emerging utilities or
specializations that happen within a technology or language.

At
present as well as in future, there is going to be huge demand for
professionals who can build User Interfaces and write applications that
can run on smart phones and tablets.
Do We Need Certifications?
During late 90s, I underwent the extension programs offered by
University of California, Santa Cruz. I took programs on Object-Oriented
Analysis, Object-Oriented Design, Java Programming, Object-Relational
Mapping, etc. More than the certification aspect, these programs helped
me acquired deep acquaintance in these subjects. We used to have 3 hours
of intensive class room sessions twice a week along with individual or
group assignments. I learned Design Patterns and wrote programs to
implement patterns such as State Pattern by developing a system that
emulates automatic traffic signal.

Any certification program from
recognized institutions carries some value. However, we must not
undergo a certification program just to pass a test and get the
certificate. There has to be a genuine intent and passion to acquire
knowledge - both theoretical and practical.
Books/ Websites I Recommend
There are several books and websites. Suns Java site (http://java.sun.com)  is an authentic place to start with. Dr. Dobbs Journal is a renowned online journal (http://drdobbs.com/) that publishes good content on Java as well Design and Architecture. Another site I would recommend is TheServerSide.com (http://www.theserverside.com/). I recommend the website and blogs of authors who contribute to such journals and magazines.
Most viewed stories - Don't Miss (1-5 of 15)
student
Oboxt Technology solutions
Embedded systems Engineer
Rajasthan Electronics & Instruments Ltd.
SERVICE
kamdhenu ispat ltd.
CEO Temple Of Transgression Ltd
Temple Of Transgression
CIO | UN CHAIRPERSON INDIA
.