The Global Engagement Model (GEM) employed by AppXoft is an onshore-offshore hybrid organization model, flowing from implementation of the Distributed Agile software development model.
All Client Relationship Management (CRM) is located and conducted locally, onshore, in the US. This features all Business Development activity, Contracting and Billing (with an American legal entity, incorporated in the State of Texas). Likewise, all Business Analysis, System Architecture, and primary Project Management is also conducted onshore, with its focus on providing a high degree of customer intimacy, personal accountability, and establishment of trust in long-term business relationships.
Offshore in Ukraine are the secondary Project Managers, Tech Leads, and Scrum Masters, along with the associated Development Teams themselves, Quality Control Resources, and all the IT and administrative resources needed for the teams to function properly.
The offshore personnel work on a time-shifted schedule. Ukraine is located eight hours later in the day than Central Standard Time (CST) in the US, but the normal workday in Ukraine at AppXoft is from 11:00 AM to 7:00 PM, thus allowing four hours or more every business day for real-time communications. For all of the onshore functions described above, all AppXoft resources work standard business hours in the US.
And when needed, all critical resources in Ukraine maintain an on-call system in case of emergency, and can be made available anytime day or night.
The biggest challenge in working with a remote software development team is getting started. This is the time when two separate organizations know the least about each other, have the least amount of experience working with each other, and have yet to figure out the best ways of cooperating and collaborating to produce the best results. The process of addressing all these issues is called “onboarding.”
Onboarding occurs after a project has been identified, resources have been allocated, and everyone is ready to get to work. The item of business is a Kick-Off meeting. Ideally, this meeting occurs with as many members of the team, both onshore and offshore, sitting in the same room. That isn’t always logistically possible or cost effective, so most of the time it’s facilitated via a teleconference or video-conference. Although, if it is possible to at least have a Tech Lead travel from Ukraine to a Client’s location to spend the first couple of weeks working side-by-side with the Client, that is of great advantage to enjoying a faster and smoother start.
As part of the Kick-Off process, the teams need to discuss and address their management tools: Project Management System (AppXoft is standardized on Jira, but can easily use a Client system when preferred), Source Code and Version Control systems, Tools, and most importantly, Communications systems. Communications systems can encompass setting up specified email accounts, identifying storage servers (e.g. SharePoint), VPN access for security, sharing of Skype contact info, teleconference contact information, Video-Conferencing contact info, etc.
From there, the next step is the implementation of Agile processes, starting with Sprint-Zero. Even if a Client organization currently uses Agile, it is important to get everyone on the same page, for not every organization uses Agile processes in the exact same manner. It’s critical to ensure that there are no misunderstandings on the various roles that need to be administered, what the protocol is going to be in establishing User Stories, User Cases, the Product Backlog, the Burn Down Chart, the Sprint duration, etc. If need be, AppXoft can provide training to help make this part of the process much smoother and efficient.
From experience, if the onboarding process is administered properly, by the end of Sprint #2, most teams are up to speed and enjoying a very productive “velocity” rate. By contrast, if onboarding is not conducted properly, it isn’t uncommon to see some teams not really “gel” with a client organization for six months or more. At AppXoft, that isn’t acceptable, and we have the expertise to ensure that isn’t what our clients experience.
Due to the structure of the Distributed Agile software development model, AppXoft Clients have a very high degree of visibility to their team’s productivity. Development Teams are meeting with their Scrum Masters every single day, reporting on the Burn Down of budget hours per task, identifying “Blockers” (anything hindering their progress), and nimbly and flexibly adjusting their work to achieve all designated tasks. This daily review information is then provided to the onshore Scrum of Scrum master every day, who is in direct communication with the Client Product Owner. In many cases, the daily review call is attended by the offshore Scrum Master, the onshore Scrum of Scrum Master, and the Client Product Owner, so all information is shared at one time, in real-time.
At the beginning of each Agile Sprint, Day-1 is a planning session for that Sprint. Any tasks not completed in the previous Sprint are identified and reprioritized for the new Sprint. New tasks are pulled from the Product Backlog, and a new Burn Down Chart is created for the next Sprint.
At the end of a Sprint, the Sprint is reviewed and the Product Owner is shown a Demo of the completed code for that Sprint. So, ideally, every two weeks, the Product Owner isn’t just reviewing progress reports, he’s seeing live code in operation. This process allows a free exchange of feedback and ideas, allowing flexibility to modify the software as the process moves forward.
Of great importance is the creative input of the Development Team itself. Software Developers, when given a programming task, inevitably think of ways to get the job done more efficiently, or in better ways, or even with a few new ideas of inspiration that may as yet have not been thought of. At AppXoft, we do not take a purely reactive approach (as is the case with many vendors), i.e. just doing the bare minimum asked; rather, we see ourselves as part of a creative collaboration with our clients, and will be eager to share our ideas, suggestions, and possibly even breakthroughs as part of the overall creative process.
On the business side of the relationship, AppXoft’s business development managers meet with our clients regularly, and strive to maintain the highest degrees of face-to-face customer intimacy. Our business development managers are our customer advocates, charged with ensuring each Client gets what they need, resolve problems quickly and smoothly, as well as be an active part of the information flow to the client, not just in terms of ongoing project activity, but also for industry news, the latest breakthroughs and best practices.
A common question that is asked of software development resource organizations is: “What kind of expertise do your people have?” Or, “Do you have anyone with expertise in X, Y, and Z?”
Candidly, the honest answer is that we could very well have a great number of software resources with a highly desirable specific skill set or area of great subject matter expertise on staff, but in all likelihood a new Client can’t have any of them for their new team, because those resources are all already dedicated to existing teams. No software resource vendor has great pools of top talent, who command the highest salaries, sitting around doing nothing, unbillable. That’s a recipe for bankruptcy.
In reality, new Dedicated Teams are built to order when needed, aggressively recruited from the open labor market, of which Ukraine has one of the richest technology talent markets in the world. This is why the very best software resource vendors have a dedicated Recruiting Staff and very sophisticated HR departments. AppXoft is no exception. The goal is always to field a premium team in the least amount of time with the properly qualified staff – ideally in 30 days or less. And then it’s time to schedule a Kick-Off meeting and commence the Onboarding process.
So to answer the question, “Can you get me X number of developers who can do Y with expertise in the area of Z?” the answer is always Yes. We’ll get them. We’ll equip them. We’ve supervise and manage them. And we’ll professionally develop them. And we’ll do all of this so you don’t have to.
Please contact AppXoft today for a free consultation about staffing a Dedicated Team that fits your development requirements exactly.