Search
Winners

Win Prizes

Social Presence
Like us on Facebook
Advertisements
Ads

Experience vs Knowledge

Vuyiswamb
Posted by Vuyiswamb under Design Pattern & Practices on 10/11/2011 3:28:37 PM | Points: 75 | Views : 10351 | Status : [Member] [MVP] [Administrator]

What is the Difference between these two?  If you have been reading my previous post on
the horrors you will notice that in one of my postings I said something
like 



"Being in a position
for 25 Years does not mean you are knowledgeable than someone who have been in
the position less than you are"



Wow, this is a very big statement. The Reason I am saying
this, it is because that you can be a programmer in a small company for 25 year
and I can be a developer in a very big company for 5 years. What is the
Difference here?  The answer is simple.
The developer in a big company has more exposure to enterprise applications
than the one coming from a small company.



The Differences between these two Developers is big. Let me
make my own comparison and you can comment on that



 















































PRACTISED(YES/no)



SMALL COMPANY 25 YEARS
EXPERIENCE IN DEVELOPMENT



BIG COMPANY  5 YEARS EXPERIENCE IN DEVELOPMENT



PRACTISED(YES/no)



NO



DESIGN PATTERNS



DESIGN PATTERNS



YES



NO



BEST PRACTICE



BEST PRACTICE



YES



NO



ENTERPRISE APPLICATIONS



ENTERPRISE APPLICATIONS



YES



NO



TECHNICAL LEAD



TECHNICAL LEAD



YES



YES



SYSTEM DOCUMENTATION



SYSTEM DOCUMENTATION



YES



NO



TECHNOLOGY



TECHNOLOGY



YES




 



From the above table, you will notice that I have been
critical for a small company programmer. But this is a small list I could
produce in a short time. I will try to explain why I give the results for each side.
 Let us start with "Design Pattern".



Design Patterns in
Small Companies



There are reasons why I said no to small companies about the design
patterns. Most of the small companies don't even know what designs patterns are.
There are some companies that implement the design patterns but it's a very
small percentage. There are many things involved in design patterns and small
companies often don't have time to look at these things or they don't have an
experience person to look at these things. Hence I gave them a "NO".   The Danger in this is that the applications
they develop is not even in the enterprise level that is why they worry less
about Design patterns. Most of their applications are not easily maintainable
as they grew. Normally you find that everything is all over the place.  So a developer who is in this situation might
know that there are design patterns, but might not know what design patterns
can do for his company or him as a person.






Design Patterns in Big Companies



Every enterprise application has tires. The application
is developed based on a pattern to solve a certain problem. There are many
patterns and these patterns does not always present a solution in every problem.
 A Developer, who finds himself in this situation,
is lucky to be exposed to patterns and practices. And he is more knowledgeable
than the one who is working for a small company.



BEST PRACTICE in Small
Companies



Most of the time, you will never find this in place. Most of
the small companies have 2 or 3 Developers who inherit bad coding practices
from each other; some write the code to solve the problem for that time. There
are no best practices that are used when writing software. Here there are no
rules. As I said there are some small companies that have this in place. So a
Developer who is exposed to this might not know the importance of best
practice. Again no knowledge is gain here.



BEST PRACTICE in Big
Companies



They are important. They mean a lot. They help avoiding
small silly mistakes. The Developer who grew developing with these practices is
better than the one who have been hacking the software for 25 years. A programmer who write an application without a pattern is a hacker.



BEST ENTERPRISE
APPLICATIONS in small Companies



Even small companies build enterprise applications, but we
should not take that away from them, because in the business language they are
classified as Enterprise business and they have a right to tag their applications with the word Enterprise. But we all know that Enterprise
applications defined by small companies are not nearly close to the one build
by big companies who have more 30 Developers in a team.



 



BEST ENTERPRISE
APPLICATIONS in Big Companies



Banks, Insurances firms,Accounting firm,Auditing firms,Law firms and Retail companies write big applications. A
Developer who are exposed at this level is much more knowledgeable
than the one who is in a small company



TECHNICAL LEAD in
Small Companies



In my previous post, I was a Technical lead. I looked after
the Silverlight and WPF/WCF Projects. 
How do you choose a technical lead? 
I was chosen from Dotnetfunda, I mean my previous employer found me in
Dotnetfunda and employed me. He wanted me to be a mentor and a Technical lead
to a Silverlight Team. Till today I did not ask him why he thought of making me
a Technical lead. Ok let me not deviate from the topic. A Technical lead in small
company does not always exist. Infect a developer who has been there for years, is a
possible technical lead when the team grows.
 To have a Technical lead is
important in a Development team. I was even used to the role and i do understand the importance of having such a role.






TECHNICAL LEAD in Big
Companies



All big Companies
have technical leads. They are taught what is expected of them and the pressure
is very high if you are a technical lead. In some big organisation, their
Technical leads don't code anymore.  But
a Technical Lead plays a role that is close to a Project Manager. If a Developer
is in a big organisation he knows what a technical lead role is and he knows
what is expected of him. The Project is assigned to a technical lead by  project manager and the lead break the project into task. unfortunately in my previous job, we did not have a project manager, I was a project manager and a technical lead. i would set the timings and break down the tasks and allocate to developers and leave some for myself so that i wont get bored or so that i can have a lot of time testing.



 



SYSTEM
DOCUMENTATION in Small Companies



The need for system documentation is important. I must admit
that today there are many small companies that does implement System
documentation. But the Level of Documentation in small companies is not up to
pa like as it is in big companies. Sometimes the updates on the documents are not properly done, few
percentage of small companies do change control or document deployment. Again a
Developer in a small Company is not exposed to these kinds of things.



SYSTEM
DOCUMENTATION in Big Companies



In most of the companies that I have worked form the
documentation is the most important thing. Time is measured with the tasks that
are created from the documentation. Technical leads assign time to the
developers based on this document. There is no coding or rather let me put it
this way, there is no system if there is no documentation. A Developer in this
environment is having advantages and exposure than the one in a small company.



 



SYSTEM TECHNOLOGY in
small Companies



We all know the growth or the expose to cutting edge
technologies in a small company is a problem. Most of the small companies loose
developers because of this specific issue. There are companies that are still
initiating development in Delphi and vb6, there are companies that still
initiate development in asp classic and believe me this is a habit, and in 2020
there will be still companies that still initiate development in asp.net. Why I
am saying this? It is because companies are so blind to a point that they forget the meaning of technology.

"Technology is to make things easy"

That is my definition for technology, i am not what is easy in vb6 vs what is in C# 4.0. These companies can't differentiate
between the following






























Past



Present and Fading



Future



ASP Classic



Asp.net



Silverlight



VB6



Vb.net/C# (Win Forms)



WPF



Soap Web services



WCF 3.0/4.0



WCF  5.0                 



.Net 3.5



.Net 4.0



.Net 5.0




This is just a basic table of comparison. Normally most of the big companies are up to date and
that is why they are big. They serve the customers with the latest
technologies. A Developer who is in a big company has more knowledge than the
one who developed for 20 years in a small company, on an old technology.



 



In the Programming world there is reputation at stake and
most companies drive developers away from them.  I would like to pose one questions to you.



1)   How do you evaluate the knowledge between the two types of developers



2) Which one lead another one ?


Thanks again


VUYISWA MASEKO


Thank you for posting at Dotnetfunda
[Administrator]

Comments or Responses


Login to post response