Consulting
I like the definition of "consulting" Bruce Eckel uses:
I think consulting is when you have some kind of special expertise -- come by through hard struggle and learning -- that you transfer to a group of people, in a relatively short period of time, and in a way that is unique for that group. I also think that consulting involves addressing particular issues faced by that group.
Although my expertise includes various areas, there are three fields in particular where I can support your business like only a few others can:
- Design and architecture of object oriented software
- Java SE and Java EE technologies
- The bridge between those.
Job was an on-going consultation, and the information provided was accurate, concise, and valuable.
Design and architecture of object oriented software
I have a lot of experience with software development, and I can help you with any step in your project. This includes, but is not limited to:-
Choosing the right development process
Depending on the project requirements and on the available personnel, I help you to find the right strategy for the overall process. This can be based on one of the major methodologies, for example, Waterfall, Agile, RUP or XP, or a mix of these. In any case, the project and requirements as well as your internal, proven structures and the available personnel have a great deal of influence on the right approach. -
Structuring your team and delegating
responsibilities
The two major strategies that are applied by the major software companies in the past are a horizontal and a vertical team organization.Horizontal
People are responsible for particular technologies. In a Java EE project, these include EJB, Servlets, JSP, WebServices and so on.Vertical
People are responsible for a feature or a use case.Given the employment market in the countries where most of my clients reside, German or English speaking countries, but also for practical reasons, it results in what I call a "Diagonal" structure (better known as Hybrid). Generally, this means that there are generalists who are responsible for a set of features or use cases as well as specialists for a certain technology. To which degree your responsibilities should be Horizontal or Vertical, and how you can "be Diagonal" without getting chaotic, is just an example of how I can help you to structure your team and to delegate responsibilities.
-
Hiring the right people
I help you to find out if you need more employees or if it is better to hire contractors (long-term) or consultants (short-term). In the areas mentioned above, I know the right people: not those who just claim to be good, not those who are merely highly paid and have to put all their effort to maintaining the illusion of skill, but the really skilled contractors and consultants. I also keep my ears open regarding available software developers who are looking for a position.
Java SE and Java EE technologies
Based on my certifications, but especially based on my experience, I know the Java SE and the Java EE APIs and specifications very well. I know how these technologies solve business problems, and how they integrate into your overall architecture. I observe how they evolve and do not only keep my knowledge up to date, but also acquire the latest information about upcoming versions and technologies.Copyright © - Kiel, Germany 2006/2007 - Kai Witte. All Rights Reserved. Alle Rechte vorbehalten.