Finding the Best Structure for Your Enterprise Development Team
An enterprise development team is a small group of dedicated specialists. They may focus on a new business project such as an IoT solution, new product development or even enhancements to exisitng systems. Typically most enterprises try to manage these development tasks internally making use of in house staff.
This typically introduces a challenge, how to you keep all the skills required under one roof and have them available when you need them, without them being distracted by business as usual tasks ?
Self-managing specialists and Subject Matter Experts (SME) are scarce in the job market. Thus, they are a relatively expensive resource and you will need to optimise their roles.
Organization Size and Enterprise Development Team Structure
Organization structure depends on the size of the business and the industry in which it functions. An enterprise development team for a micro business may be a few freelancers burning candles at both ends. While a large corporate may have a herd of full-timers with their own building. Most IoT solutions are born out of the efforts of micro teams.
In this regard, Bill Gates and Mark Zuckerberg blazed the trail with Microsoft and Facebook. They were both college students at the time, and both abandoned their business studies to follow their dreams. There is a strong case for liberating developers from top-down structures, and keeping management and initiative at arm’s length.
The Case for Separating Microteams from the Organization
Microsoft Corporation went on to become a massive corporate, with 114,000 employees, and its founder Bill Gates arguably one of the richest people in the world. Yet even it admits there are limitations to size.
Today’s component-based enterprise applications are different from traditional business applications in many ways. To build them successfully, you need not only new programming tools and architectures, but also new development and project management strategies.
Microsoft goes on to confirm that traditional, top-down structures are inappropriate for component-based systems such as IoT solutions. We have moved on from “monolithic, self-contained, standalone systems,” it says, “where these worked relatively well.”
Microsoft’s model for enterprise development teams envisages individual members dedicated to one or more specific roles as follows:
- Product Manager – owns the vision statement and communicates progress
- Program Manager – owns the application specification and coordinates
- Developer – delivers a functional, fully-complying solution to specification
- Quality Assurer – verifies that the design complies with the specification
- User Educator – develops and publishes online and printed documentation
- Logistics Planner – ensures smooth rollout and deployment of the solution
Three Broad Structures for Microteams working on IoT Solutions
The organization structure of an enterprise development team should also mirror the size of the business, and the industry in which it functions. While a large one may manage small microteams of employee specialists successfully, it will have to ring-fence them to preserve them from bureaucratic influence. A medium-size organization may call in a ‘big six’ consultancy on a project basis. However, an independently sourced micro-team is the solution for a small business with say up to 100 employees.
The Case for Freelancing Individuals
While it may be doable to source a virtual enterprise development team on a contracting portal, a fair amount of management input may be necessary before they weld into a well-oiled team. Remember, members of a microteam must cooperate with ideas while functioning semi-independently. The spirit of cooperation takes time to incubate, and then grow.
There are a number of platforms available, which supposedly enable companies to source the Top X percent of software development talent across the globe. All these platforms base their selection criteria on some academic metric and theoretical measurement of technical skill, based on results of some technical challenge. In theory and principle these “Screening” criteria may seem ideal, in practice they actually fall way off the mark.
The truth is, despite what conventional wisdom dictates, technical acumen does not guarantee success. What really counts towards success is collaborative efforts. Staffing your team with 5 “Expert Software Engineers” will not guarantee a successful project.
We only have to take a look at the Google, of supposedly a magnet for the bightest minds in software engineering, yet it still has a high percentage of failed projects and products that never really see the light of day. There are also a number of well documented high profile fall outs on engineering teams.
This is the argument, briefly, for outsourcing your IoT project, and bringing in a professional, fully integrated microteam to do the job quickly, and effectively. We can lay on whatever combination you require of project managers, program managers, developers, quality assurers, user educators, and logistic planners. We will manage the microteam, the process, and the success of the project on your behalf while you get on running your business, which is what you do best.