skip to main |
skip to sidebar
While all architects were experts in certain technologies at some point in their careers, they now spend more time learning all they can about as many different technologies as they can rather than spending significant time learning all there is to know about a few technologies. Why? Because effective architects make the best (rather than right, see separate post for more on this topic) technology decisions to solve specific business problems. To make the best decisions, they need to know a lot about a lot of technology. There are simply too many technologies and too much too know about each one to stay deep in a given technology for long. So, what does it mean to know a lot about a lot of technology? Consider the following steps:- Start with a technology area, say customer relationship management (CRM) software, programming languages, operating systems (OS), etc.
- Research to determine what offerings exist in the area selected in step 1. For example, if the area were personal computer operating systems, you'd identify Windows (multiple versions), Unix (multiple varieties), Mac OS (multiple versions), and Linux (multiple distributions) for starters. An excellent resource to start you down the road to identifying areas and offerings are the IT Roadmaps, developed by Jeff Tash.
- Determine the pros/cons for each offering identified in step 2. You can often find product comparisons with simple Internet searches. Of course, comparisons can be biased based on who's doing the comparing, so be sure to read multiple comparisons from multiple sources. The pros/cons shouldn't just be based on feature/functionality, but also on pros/cons in meeting service level requirements for scale, availability, fit with existing software products, etc.
- Select another area and complete the process again.
For each of these steps, you'll of course want to prioritize based on what's most important to the current position you hold or project you're working on. At this point though you'll have a fairly good breadth of knowledge in the areas you've researched. So what's depth then for an architect? Within the area you selected previously, complete the following steps (for starters) for each offering:- Understand the key components of each offering and how they relate to each other. For example, a CRM offering typically has an application server component and a database component. Each of these components may further have dependencies on specific database and OS technologies.
- Understand the authentication options available for each offering and which options are relevant for your project.
- Understand the offering's dependencies, and how those do/don't coincide with your existing environment.
Armed with this knowledge you can now begin to make the best technology decision for a given project, as well as in the future, though of course, you'll need to refresh your knowledge over time. Certainly, during implementation you'll learn even more about the chosen offering, but once its implementation is complete you may not ever touch it again. With all of the offerings available in different areas, it's almost impossible to stay current with it all, and it's certainly impossible to stay deep in a specific technology, unless you are a specialty architect. Effective architects' depth lies in multiple offerings across multiple areas, whereas technologists' depth within an offering is deeper, but less broad.
0 comments:
Post a Comment
Thanks for contributing! I do moderate and won't approve rude or offensive comments, so please keep it clean and constructive.