Daxko/CSI Used Azure to Accelerate Its Development Cycle and to Enhance Its Customer Service and Performance

By | Industry | No Comments

Daxko/CSI Software faced a challenge: its customer base of fitness and recreation centers was growing rapidly, thanks to the success of its comprehensive enterprise-software solution, but keeping up with the IT-infrastructure needs for that growing customer base was testing the company’s IT staff. The company was increasingly constrained by rising operations overhead, particularly for managing its growing databases. Worse, that operations overhead was cutting into development resources for new initiatives, like new mobility features for the company’s software.

According to David Molina, Director of Product Development at Daxko/CSI, Azure provided CSI Software with the platform-as-a-service (PaaS) model that it needed to simplify database management, increase scalability, and free up resources to focus on software instead of ops. “Azure SQL Database was a great option for us. Not having to worry about maintaining a SQL Server, a failover cluster, and all the other infrastructure needs was ideal for us.”

Since migrating to Azure, CSI Software needs an operations staff of only two to manage over 600 customer databases. The company uses Azure SQL Database elastic pools to move customer databases based on size and need.

Molina continues, “Our customers felt the change immediately. Before elastic pools, they occasionally had timeouts and other issues during burst periods. With Azure elastic pools, they can burst as needed and use the software without issues.”

In addition to improving performance for customers, Azure elastic database pools freed up CSI Software resources to focus on developing new services and features, instead of dealing with operations and management. Those IT resources helped CSI Software improve its enterprise software offering, SpectrumNG, to help engage gym members, improve staff efficiency, and give staff and members mobile access for interactive tasks and real-time notifications.

Azure has also helped CSI Software accelerate and improve the development and quality-assurance (QA) cycle by enabling automation options. With the company’s Azure implementation, build managers can package up components with the click of a button. As Molina describes, “As part of the release cycle, QA is now able to deploy to a test environment in Azure, which closely mimics our production stack. We can deploy builds immediately to our dev environment to vet changes. That’s a big win for us, because we didn’t have parity for testing before that.”

OFFLOADING TO THE CLOUD
Before moving to the cloud, CSI Software had successfully built up its own multitenant infrastructure in a local datacenter in Houston. As the company expanded, it faced increasing growing pains from purchasing, provisioning, and maintaining all of the hardware and software needed to support its customers. IT staffing to handle operations became another bottleneck that led to a slowdown in provisioning new resources and rolling out new services to customers.

CSI Software looked into cloud options for eliminating that overhead, so that it could focus on its code, instead of its operations. The company discovered that many of the top cloud providers only offer infrastructure-as-a-service (IaaS) solutions that still require a large IT staff to manage the IaaS stack. In the end, CSI Software determined that the Azure PaaS solution was the best fit for its needs. Molina explains, “Azure gets the hardware and system software out of the way, so we can focus on our software offerings, while reducing our IT overhead.”

MAKING THE TRANSITION TO AZURE
After selecting Azure for its PaaS solution, CSI Software began migrating its backend infrastructure and databases to the cloud. Prior to Azure, SpectrumNG customers needed to install a client application that communicated with a Windows Communication Foundation (WCF) service on the back end. According to Molina, “Although some customers hosted everything in their own datacenters, we built out the product to be multitenant. We hosted everything in a datacenter in Houston, using SQL Server as the data store.

“Our product offering also included a member-facing web portal (written in ASP.net), which was designed to be white-labeled to match the customer’s web presence, and a SOAP API to support the online pages and any third-party integration.”

The migration to the cloud did not take long for the architecture. According to Molina, “The majority of the effort dealt with modifying the way that we read config file information, a centralized connection-string modification, and automating the packaging, uploading, and deployment of our releases.”

To develop the build automation, CSI Software engineers used Azure PowerShell and REST APIs to create packages and upload them to a staging environment for release each night. The overall transition to an Azure cloud-based deployment went quickly and smoothly for the CSI Software IT team. Molina explains, “In all, we had a beta environment in the cloud within three to four weeks of taking on the project. That was a surprising win for us.”

After configuring and testing the environment, CSI Software began migrating customers. For customers already using CSI Software hosting, the transition was nearly seamless. For customers migrating from an on-premises deployment, the migration to the cloud took some additional time, but was still primarily pain-free for both customers and CSI Software.

For new customers, CSI Software’s IT staff use the following process to on-board them to Azure:

1. Azure PowerShell scripts are used to spin up a new database for the customer; all customers start out on a premium tier to ensure enough initial throughput for the transition.
2. When possible, CSI Software uses the Azure SQL Migration Wizard to move existing data to an Azure SQL Database instance.
3. Finally, Microsoft SQL Server Integration Services (SSIS) are used to reconcile any discrepancies in the data or to perform any data cleanup as required.

Today, about 99 percent of CSI Software customers are hosted in Azure, across four regional datacenters (North Central, South Central, East, and West). By having datacenters in each customer’s geographical region, latency is kept to a minimum.

 

AZURE ELASTIC DATABASE POOLS FREE UP IT RESOURCES
Several features of Azure have helped CSI Software shift from being infrastructure and operations focused to being feature and development focused. Perhaps the biggest benefit has been from elastic database pools.

CSI Software currently provides about 550 databases for customers. Before elastic pools, it was difficult to manage that many databases within a tier structure. Ops managers had to assign performance tiers based on the burst needs of customers, which required significant IT-resource overhead. With elastic database pools, managers can assign tenants a premium or standard pool, as appropriate, and then move customers based on size and need. Customers felt the effects of the elastic database pools almost immediately; before elastic pools, customers had timeouts and other issues during burst-usage periods, but with elastic pools, customers can experience activity bursts as needed, and they can continue to use SpectrumNG without issues.

AZURE ACTIVE GEO-REPLICATION ACCELERATES REPORTING
Several CSI Software customers are also taking advantage of Azure Active Geo-Replication. With Active Geo-Replication, up to four readable secondary databases can be configured in the same or different datacenter regions. CSI Software makes use of Active Geo-Replication in two ways: first, the secondary databases are available in the case of a datacenter outage or the inability to connect to the primary database; and second, the secondary databases are readable and can be used to offload read-only workloads such as reporting jobs. Some CSI Software customers use this benefit to accelerate reporting workflows.

CSI SOFTWARE APPLICATION LOGIC AND ARCHITECTURE
SpectrumNG uses web roles. Because the application is multi-tenant, a WCF service is used to handle the initial connection request from customers. As Molina states, “The request identifies each customer, which then lets us build a connection string out to their databases to do whatever we need to do.”

For the web tier of its service, CSI Software takes advantage of Azure automatic scaling, based on day and time. Available resources are automatically increased to accommodate higher usage during business hours, according to the time zone of each regional datacenter. Resources are also set to scale down on weekends, when customer needs are lower.

Figure 1. A cloud services worker role draws structured data from Azure SQL Database and semi-structured data from table storage. SpectrumNG users interact with that data through a cloud services web role.

USING WEB APPS AND A WEB-PLAN TIER FOR MOBILE APPS
Using Azure SQL Database freed up resources for CSI Software to enable new initiatives, including a complete mobile platform based on a custom API hosted in Azure web apps. The platform enables gym members and staff to use mobile devices to check schedules, book classes, and receive messages.

The platform uses service-oriented architecture (SOA) to take a single component—like a point-of-sale system (POS) or a sales system—move it on the fly to another web plan, and then spin up a service to support that component, while leaving everything else on the original web plan. This ability gives CSI Software tremendous flexibility, and it helps keep costs down.

AZURE LETS CSI SOFTWARE DEVELOPERS FOCUS ON APPS AND SERVICES
Azure SQL Database isn’t just a boon to SpectrumNG customers, who enjoy the fast, reliable service, it’s also a big win for CSI Software’s IT staff and developers. By offloading ops to Azure in the cloud, CSI Software reduced its overhead for resources and infrastructure, greatly accelerated its development cycles, and no longer needs to micromanage databases to optimize performance for its tenants.

Why I Stand: Tales of the Standing Desk

By | Culture, Healthy Stuff, Life at Daxko | No Comments

It seems like every day there is a new study published advising the general public what we should or should not do. One of these studies has challenged the workplace’s most traditional posture – sitting. Apparently sitting at a desk for 8 hours in a row is unhealthy. I have even heard that sitting has been dubbed the new smoking – sitting all day can take years off your life.

People might think that I (we, the majority of the Customer Success team) stand because it’s healthy or trending or hip. Full disclosure: these reasons may have had something to do with raising my desk many months ago but they sure haven’t sustained my daily vertical posture. In fact, one of the main reasons I stand is so that Jeff P. and I can decorate the shelf-like structure that separates our desk with treasures such as a Justin Bieber Christmas ornament, a Happy Meal toy, and the head of Michelangelo’s David. Because I stand, I know that fellow stander Daniel L. uses intense karate moves to harness his inner zen while on accounting calls. One of the great benefits of standing is that it provides me the daily joy of dropping buckets on my teammates. (For the unenlightened, dropping buckets consists of shooting Daxko stress balls into the trash cans of unsuspecting teammates and making it rain on their heads.) I usually perform the feat after a tough call or a big win with a customer.

Now there are some that don’t stand and that’s totally fine. In fact, I’m a bit of a hybrid myself.

Sometimes when the old legs get tired I borrow Marland H.’s standing desk chair. I know. A standing desk chair is an oxymoron. But I love it. It’s kind of like sitting in a high chair, which is great until people try to feed you food using the air plane method. Marland just had a kid so he’s a regular offender of this gesture but I usually play along… it’s his chair anyway.

But in all seriousness, or as much seriousness as I can muster, standing has shown me that where I work and the people I work with are unbelievable. I hear Gus A. conversing with customers we serve in a caring and helpful way. I see Gabby J. and Justin W. teaming up to give a customer what they need. I am encouraged at Megan G.’s positive attitude as she takes her first call. As I look up from my work I spy Josh A., with his grizzled beard and swagger a college kid would envy, leaving a demo room after showing a turnstile who’s boss. Roy M., a fellow upright compadre, spews knowledge to anyone who visits his desk and reminds me to stretch more as he always seems to be limbering up in some manner. Out of the corner of my eye I see a blur which I assume is Marland scootering at top speed to help a customer on a conference call.

Standing allows for collaboration, efficient briefings, productive and decisive problem solving, and exudes an unwavering feeling that we are all in this together. I’m not sure you can measure what happens on the 5th floor of Daxko the way studies have done with the benefits of standing… and I’m not sure you have to. But something I do know – whatever it is, whatever we have culminated as a team and as a company is indispensable and life giving. And every day, I have the privilege of seeing that from my point of view. Whether I am standing or sitting in Marland’s high chair.


Sam G. is a Customer Success Advocate who enjoys slow mornings, coffee, and homemade waffles with his wife every Saturday.

5 Tips for Taking Ownership of Your Career in the New Year

By | Culture, Free Career Advice, Grow Your Career, Healthy Stuff, Professional Development | No Comments

It’s a new year, which means many people are making resolutions and goals in both their personal and professional lives. One thing that has been on my mind lately is taking the reins on my career. I’m fortunate to work for a company whose mission includes providing rewarding careers to team members. In the long run, though, my career growth is up to me. I think one of the biggest misconceptions people have about the companies they work for is that it’s the company’s responsibility to look after their career. But that’s just not true. Sure, a company can provide great growth opportunities, but ultimately it is the team member who has to work at their own career goals and steer their career toward those growth opportunities.

So, how do you take ownership of your career? Here are five ways to start.

#1: Step out of your comfort zone.
One of our CEO’s favorite sayings is “Get comfortable being uncomfortable,” and this is certainly applicable to your career goals. I would not be in my current role if I hadn’t been willing to take a few risks and explore the unfamiliar. My background is in teaching, training, and writing. Though I was able to carry all of this knowledge over into my role as Talent Marketing Manager, I didn’t come from a marketing background. In truth, I did feel a little uncomfortable during the first few months in this role. This discomfort only encouraged me to work harder and has truly benefited me in the long run, allowing me to develop skills and ideas I didn’t think were possible for me.

#2: Speak up.
If you’re feeling overwhelmed, if something is bothering you, if you have a differing viewpoint or opinion… speak up. I’m going to be honest – this is something I am still working on. It’s probably something I will continue to work on throughout my career. My team lead often reminds me that she doesn’t know how I feel unless I tell her. Earlier in my career, at a different company, I never felt empowered to voice my opinion, and this has carried over into present day. Fortunately, Daxko is huge on transparency, and team members are encouraged to speak up. I have gained more confidence in expressing my thoughts and even saying “no”. If you’re uncomfortable speaking up in person, try writing it out first. It’s okay to practice what you’re going to say before you actually say it. Of course, sometimes “on the spot” can’t be helped; if you’re in a meeting and you want to express a differing opinion, do it thoughtfully, respectfully, and don’t let someone speak over you until you have finished your thought.

#3: Have a long-term goal, and learn skills to help you achieve it.
During my early years at Daxko, I quickly realized that although I enjoyed the training aspect of my job, my ultimate goal was to work on Daxko’s marketing team. When I was a trainer, I sat close to the marketing team and was privy to some of their brainstorms and discussions, and that’s when it clicked: that was the team I wanted to be on. In addition to an Education degree, I have an English degree with a concentration in rhetoric. I was putting my Education degree to use as a trainer, but I have always loved writing and creative processes more than teaching. I recognized that I would be able to put my expertise in persuasive writing to use as a part of the marketing team. Once I had this goal in mind, I began to get to know members of the marketing team and schedule meetings to learn skills from them, such as Pardot and WordPress. These tools helped me in my role as a trainer (I was in charge of the Services monthly newsletter), but the knowledge also gave me an edge when I was interviewing for my marketing role.

#4: Never stop learning.
At Daxko, all team members receive an annual professional development budget to use on courses, books, conferences, or activities that will help us get better at our jobs or learn new skills. In past roles and my current role, I have used part of my professional development money on certification courses to learn more about my field and develop my skillset. Learning shouldn’t stop when you graduate from college. On the contrary, most of the knowledge I have gained through professional development has been more valuable to my career than my college classes. If you work at a company that does not provide a professional development budget, you can still develop your skillset. There are plenty of free or affordable online courses through sites like ALISON, Lynda, and Coursera, just to name a few. Read blogs that pertain to your field. Find thought leaders to follow on Twitter. And ultimately, you won’t know what costs your company might be willing to help cover unless you ask, so keep #2 in mind, speak up, and discuss professional development with your manager.

#5: Find a mentor.
I didn’t have a career mentor until last year. Don’t get me wrong – I have had plenty of mentors in the past who have helped guide and shape me into the person I am today. Last year, though, I sought out a mentor in my field who I could trust not only for career advice, but for professional advice in general. Because I am still fairly young in my career, there have been many situations I have encountered in the workplace that are new to me. That’s why it’s great to have a mentor who is more experienced and who has faced these same situations in the past. When you’re seeking a mentor, I suggest someone in your field (or the field you want to move into) and someone easy to talk to. Many of the conversations I have with my mentor are about our personal lives, and I really value the fact that my mentor has gotten to know me and truly cares about me. I suggest meeting in person once every couple of months (or monthly, if you can swing it) to catch up, and of course, email, call, or text your mentor whenever you need advice.

Remember, your career and development are in your hands. As you think about how to grow in 2017, keep these tips in mind. Have a vision, and make this the year you take strides to achieve it!


Janna B. is Daxko’s Talent Marketing Manager who is slowly becoming a morning person and wishes she lived in the 1960s/70s.

Are you ready to make a career change in the new year? Check out our current opportunities.

Daxko/CSI Software Ranks No. 1 In the Top 100 Again for 2016

By | Customer Experience, Industry | No Comments

CSI Software has once again captured the top spot for software providers in the Top 100, dominating the competition for the ninth consecutive year. Club Industry magazine’s annual Top 100 Health Clubs list ranks each company by gross revenue and is the benchmark for vendor market penetration.

SpectrumNG, CSI’s flagship software platform, helps health and fitness facilities improve customer relationships, cut costs, and make more money. More companies on the Club Industry Top 100 use SpectrumNG than any other vendor software. Repeating its top ranking from last year, CSI put up even more impressive numbers in 2016.

CSI’s 39 percent market share for 2016 is more than the combined total of their next seven competitors. Also, the company’s 39 percent share represents its largest share to date, extending its Top 100 lead while continuing to show year-over-year share growth.

Along with the fitness centers CSI serves, the company aims to create a wellness environment where health, happiness and technology come together.