DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations

How Having a Center of Excellence is Impactful

Having a Center of Excellence (COE) model can help software developers successfully work together in an Agile environment.

Mahadevan Subramani user avatar by
Mahadevan Subramani
·
Nov. 09, 16 · Opinion
Like (1)
Save
Tweet
Share
4.45K Views

Join the DZone community and get the full member experience.

Join For Free

Over the course of my career in the industry, I’ve worked with a number of companies that have applied a Centers of Excellence (COE) model in different departments. I created a Center of Excellence in SOA when I was working as an architect for Agile teams and I'm now trying to enable the same mindset in the QA team for Agile on performance and security. My experience is with COEs that were very well-resourced with multiple dedicated full-time functional or subject matter experts. There were also others who were cobbled together through a combination of standards, and they leveraged resources to do the work of the COE in addition to their day-to-day jobs. 

COE is not for doing the work; COE is for enabling the work. This is what my company Vice-President always says to me (well, sometimes yells at me). Now, the trend is changing from Center of Excellence to Center of Enablement. In Center of Excellence, a set of people will do the job and also enable the environment. In Center of Enablement, it's not a set of people; all the Agile teams will have a part and be involved in the work. For example, performance testing and security testing will be part of Sprints. Teams should run automated performance core cases and automated burp suite scanning every day.  This will be enabled by Center of Excellence (or Center of Enablement team).

Ask about the purpose, goal, and vision. This leads to Continuous Delivery and Continuous Integration.

Long story made short, when it comes to COEs, there does not appear to be a standard model, and although I have personal preferences, the reality is that different models can be effective based on the context and working culture. In today's world, most of the developers are not willing to accept the COE model. However, I am quite sure that if you fast forward to 10 years from now, every developer will have hands-on development, performance testing, and security testing. Of course, at the end of the day, performance and security testing require developing scripts because they're a part of development.  

That being said, even though the model tends to be variable across companies, the work of the COE tends to be quite similar and relates to how I am enabling this in our company. My tasks include (but aren't limited to):

  • Defining a common set of best practices and work standards for performance and security.

  • Assessing (or helping others to assess) the maturity of their scripts and validating their scripts.

  • Enabling the performance lab and security lab for testing.

  • Training and coaching the dev teams on performance and security from a COE perspective. 

I hope that in future, the name "Center of Excellence" will be changed to "Center of Enablement" or "Center of Enablers," and that every team member will be part of that irrespective of his role.

Excellence (software)

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • gRPC on the Client Side
  • Container Security: Don't Let Your Guard Down
  • 11 Observability Tools You Should Know
  • Building a Real-Time App With Spring Boot, Cassandra, Pulsar, React, and Hilla

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: