Ticketing Platform

Full Revamp of a Ticketing Platform for Officina

Nowr

How rebuilding a flawed ticketing platform’s prototype from scratch helped an Italian startup accelerate software development by 40%, reduce infrastructure and DevOps overhead by 25%, 
and get a production-ready solution.

Business challenge

Every growing product carries the weight of early-stage decisions. What accelerates launch in year one can quietly constrain scalability by year two. Our client, Officina s.r.l., an Italian startup, was no exception.

After launching as an offline event platform, the company decided to enter the regulated online ticketing market by obtaining SIAE certification, a mandatory requirement for selling tickets to music events online in Italy.

To move fast with this new project – NOWR – and reduce certification time, they made some tradeoffs that later shaped the platform’s operational and technical constraints and became hard to ignore.

A flowchart with four labeled boxes: Officina – client at top, NOWR – Officina’s SIAE-certifed online ticketing platform below it, SIAE – Italian copyright authority granting homologation for music event ticketing systems to the right, and Ticka – licensed SIAE intermediary below SIAE. Dashed arrows connect the boxes.

Ticka-imposed limitations

Instead of pursuing direct SIAE regulatory approval of their own ticketing infrastructure, Officina chose to operate through Ticka, a licensed SIAE intermediary. While this decision reduced time-to-market, it also meant a few technical bottlenecks:

  • No smooth integration path. Connecting the platform via API simply wasn’t on the list. Operations had to rely on export/import files and manual copy-paste.
  • No built-in booking or refund logic. Critical safeguards had to be implemented outside Ticka.

Rigid architecture and self-contradictory infrastructure

Although outsourcing software development has numerous benefits, you reap none of them if you partner with an unreliable company. That’s what initially happened to Officina. Their previous contractor walked away leaving:

  • A monolithic, hard-to-scale architecture
  • A mix of Google Cloud and AWS infrastructure
  • Three separate backends
  • Fragmented frontend drafts
  • No CI/CD pipeline
  • Multiple code repositories

Torn between operational constraints and a brittle technical foundation, the client needed a trusted tech partner to assess what could be preserved, what required rebuilding, and how to work around Ticka-related limitations. Instinctools’ dedicated team proved to be up to the task.

Solution

After evaluating the development artifacts, it became clear that rewriting the platform from scratch would be faster, safer, and more future-proof than continuing to patch up and reuse the legacy core.

  1. Replacing a rigid monolith with flexible and secure microservices

Once the decision to rebuild was made, the question was how to design a platform that would not collapse under its own growth again. That’s why, we deliberately chose a microservices architecture as the structural backbone of the new NOWR platform.

What it meant in practice:

  • Clear function boundaries
  • A dedicated database per service
  • No shared internal logic
  • Service-to-service communication via REST and message queues

As Officina’s business model depends on third-party providers, including SIAE intermediaries like Ticka and payment operators like Stripe, staying flexible is a tough call. We designed every external integration as an isolated microservice, so that if the client’s providers change, the platform can adapt without undergoing another full rewrite.

Our delivery stack included:

  • NestJS to structure scalable backend services
  • Nx mono repository to maintain development speed without sacrificing modular boundaries
  • REST for fast frontend iteration
  • Message queues for asynchronous service coordination
  • Separate databases per microservice to prevent tight coupling

The outcome was strategic optionality. NOWR is no longer locked into architectural decisions made under time pressure years ago. The new foundation supports experimentation, provider replacement, and controlled scaling, all without destabilizing the entire system.

  1. Moving from two clouds to one

Ticket sales, especially for SIAE-regulated events, require strict ordering. Any inconsistency brings the risk of customer disputes, compliance violations, and revenue loss. Officina’s fragmented infrastructure simply wasn’t built for that level of rigor.

With some components running on Google Cloud and others on AWS, it caused operational inconsistencies and hindered scaling initiatives, not to mention the cost of maintaining two setups. As Officina already used AWS S3 as their primary cloud storage, we consolidated the rest of the stack on AWS to standardize operations and ensure correct processing order and resilience under load:

  • Amazon SQS/SNS for queued workflows and event notifications
  • EC2 with Elastic Load Balancing (ELB) to seamlessly scale server performance
  • Asynchronous processing for non-blocking operations

As part of the consolidation, we migrated operational services and related datasets from Google Cloud to AWS S3. This included transferring application data, reconfiguring storage, and aligning networking and access policies.

Operationally, shifting to a single cloud environment instead of juggling two partially integrated ecosystems also simplified DevOps activities, from monitoring deployment pipelines to managing cloud permissions and handling incident response.

A cloud architecture diagram showing AWS services: DynamoDB, SES, DocumentDB, PostgreSQL, Lambda, Cognito, API Gateway, WAF Captcha, S3, and a VPC. Services are grouped in a purple box with labeled components: Payments, Notifications, Core, and Tickla Plugin.
  1. Building a Ticka synchronization plugin to ease regulatory constraints

Fast SIAE certification with Ticka without full direct regulatory approval came at the price of tooling restrictions  For instance, our dedicated team had to bypass the lack of flexible APIs and limited automation capabilities. Since full API-level automation was off the table, we designed a viable workaround that eliminated the majority of manual steps, reduced copy-paste errors, and caught inconsistencies before they could affect ticket sales. 

Instead of embedding Ticka logic directly into the business core, we isolated it behind a dedicated Ticka synchronization plugin that serves as a controlled integration layer:

  • Pulls SIAE-certified events and tickets from Ticka
  • Synchronizes them with NOWR’s internal data structures
  • Automates export/import routines wherever technically possible
  • Validates incoming data before it enters the core system

That way, Ticka is encapsulated within its own service boundary and can’t leak constraints into the rest of the NOWR’s architecture.

  1. Ensuring compliant fiscal flows across the NOWR platform

Operating within a restricted certification scope meant that fiscal and commission handling required logic beyond Ticka’s approved tooling could support. To keep the platform compliant without slowing down ticket sales, we engineered safeguards around fiscal and payment workflows.

One of the critical challenges was monetizing ticket commissions in a tightly regulated environment while maintaining clear separation between organizer revenue and platform fees. To address it, we built a compliant fiscal backbone through integration with fiscal.com.

  • Real-time fiscalization of transactions, with compliant fiscal records generated automatically
  • Separate fiscal treatment of platform commissions, ensuring intermediary revenues were handled correctly
  • Clear audit trails for full transaction reconciliation
  • End-to-end traceability connecting each ticket sale to its fiscal record
  1. Derisking ticket purchase flow

When moving to a unified AWS-based infrastructure, we also reworked the ticket purchase flow. Previously, it ran synchronously: meaning, if any downstream component stalled or failed, the entire transaction was exposed to errors and duplication.

A simple flowchart titled Legacy flow in light gray. It has four boxes: Request captured, Direct call to provider, Immediate processing attempt, and Success or failure returned to user. Purple lines show the process sequence between boxes.

To minimize failed or duplicated transactions, we replaced direct synchronous calls with queued workflows.

A flowchart with three boxes connected by dotted arrows. The first box, highlighted, says Request captured. The second, faded, says Placed in a controlled queue. The third, faded, says Processed in strict sequence. Below the first is Confirmed only after successful execution.
  1. Orchestrating multi-party payments

As NOWR evolved into a platform that connects ticket buyers with event organizers, one challenge became central: moving money reliably between multiple parties without adding friction to checkout.

Since the market of software systems purpose-built for such transactions is broad, there was no need to hardcode financial logic into the platform. We implemented Stripe Connect, purpose-built exactly for multi-party payment flows.

A tablet displays a ticket refund management dashboard for an event. The screen shows a table listing ticket holders, ticket types, status, refund amounts, and admin notes, with search and export options at the top right.
A tablet screen displays an admin dashboard with a list of user transactions, including names, status, dates, and roles. Below, there are buttons for various actions like Refund, Copy barcode, and Stripe refund. The NOONR logo and footer links are at the bottom.

But this isn’t just “accepting payments via Stripe.” Each organizer is onboarded as a separate sub-entity within Stripe that is guided through KYC verification and configured for controlled payout flows. Revenues are automatically split between organizers and the platform, with Stripe handling fund routing and regulatory checks on its end.

Such an approach allowed the client to:

  • Manage multiple organizers within a single infrastructure
  • Automate commission distribution
  • Maintain full financial transparency and traceability
  1. Delivering advanced ticketing mechanics

Once compliance and payment flows were in place, we focused on what makes a ticketing platform truly competitive: flexible, intuitive ticketing built for the operational complexity of real-world events.

To stand out against long-established players and give organizers real reasons to switch to NOWR, our team introduced:

  • Event scheduling

    An event is no longer limited to a single calendar entry. It can now include multiple schedules, allowing organizers to offer tickets for the same event across dozens of dates and time slots.

  • Event grouping

    Separate events can be brought together into a logical collection, for example, a three-day festival where each day is managed independently but presented as a single, cohesive experience.

  • Subscriptions and multi-event passes

    Multiple schedules, including those across grouped events, can be bundled into a single discounted pass, making it possible for users to purchase access to several dates in one transaction.

  • Promo code functionality

    Public and personalized discounts give organizers more room to experiment with pricing strategies and tailored ad campaigns.

  1. Building a solid admin panel

While building an MVP, we kept thinking strategically and planning for the time when NOWR will grow into a full-scale ticketing platform and compete with Italian market leaders like Ticketmaster and TicketOne.

To head off future bottlenecks, we focused on the back-office part of the platform, delivering a full-featured admin panel. At its core is a two-step moderation framework applied both to organizer onboarding and event creation. New organizers require approval before activation, and newly created events don’t go live automatically, but are routed to moderation first, where admins can edit, approve, or reject them.

A tablet displays a statistics dashboard for the event “LUMEN SPIN OFF + BNKR44 & FUERA.” A bar chart below shows monthly revenue and quantity data, with a total revenue of €234,042 highlighted at the top.
A tablet screen displays a ticket management page showing a list of purchased tickets with buyer names, ticket types, status, order numbers, cities, issue dates, and event dates. The interface also includes filter options, export button, and a navigation menu at the bottom.

This ensures tight operational control and strong platform governance, supported by:

  • Centralized management of accounts and event entities
  • Structured event editing and publishing
  • Real-time oversight of ticket availability and sales performance
  1. Refining brand identity alongside product development

Having contributed to the rollout of hundreds of digital products, we know that functionality alone is not enough to win users. A feature-rich, intuitive platform is only half a solution, but first, it has to catch the customer’s eye.

Going beyond engineering, we conducted a brand audit and proposed enhancing the platform’s logo and overall visual language to make it clearer and more cohesive:

  • Modernized the logo for better readability and responsive use
  • Standardized typography, spacing, and color usage across the interface
The image shows NOWR with the W as a turquoise geometric triangle. Below, three dashed arrows point down to a second NOWR, this time with a standard black W. The background has white and turquoise bands.

Before

  • Jerry-built prototype
  • Monolithic architecture with three separate backends and fragmented frontends
  • Mixed Google Cloud and AWS infrastructure
  • No CI/CD and code scattered across multiple repositories
  • Synchronous ticket purchase flow vulnerable to duplication and failures
  • Lack of foundation for compliant fiscal flows
  • No multi-party payments
  • Manual export/import workflows with Ticka
  • Baseline ticketing mechanics

After

  • Solid product
  • Microservices-based architecture with clear service boundaries
  • Fully consolidated AWS infrastructure
  • Structured mono repository with CI/CD pipelines
  • Queue-driven, asynchronous ticket purchase flow
  • Compliant fiscal flows
  • Smooth multi-party payments
  • Custom Ticka synchronization plugin acting as a controlled integration layer
  • Advanced ticketing mechanics

Business value

  • Scalable foundation for growth in a regulated EU ticketing market
  • Stronger platform governance thanks to a centralized admin panel with advanced moderation capabilities
  • + 40% in feature delivery speed thanks to independent microservice deployments
  • – 25% in infrastructure costs after shifting to a single AWS ecosystem

Multiplier effect

The constraints Officina faced, such as rigid legacy architecture, fragmented cloud infrastructure, and dependence on third-party providers with legacy integration options, are far from unique to the entertainment and media industry. Similar bottlenecks emerge in fintech, ecommerce, logistics, healthcare, and any integration-heavy domain where early technical shortcuts collide with long-term growth. If your team lacks the time or perspective to surface and fix them early, an experienced tech partner can step in before technical debt compounds.

Four young adults in a modern office work on laptops displaying code. One person stands, leaning over with a laptop, discussing something with the others, who are seated and listening attentively. Large monitors with code fill the background.

Quoting System Modernization

Quoting System Modernization
For a Global Industrial Manufacturer

RENOLD logo
How rewriting the quoting functionality and embedding it into a customer-facing 3D visualizer enabled a German subsidiary of the Renold Group to accelerate overall order processing from 1-2 days to under 30 minutes and boost quote-to-order conversion by 17%.

Industry:
Manufacturing

Legacy Software Modernization

Enterprise Automation

Custom Software Development 

Business challenge

Having half of your tech ecosystem up-to-date and the other half reliant on legacy software created significant performance and scalability constraints for our client. Renold GmbH, a global manufacturer of industrial conveyor chains, gears, and couplings, faced operational inefficiencies due to outdated quoting practices. Although they already had a modern, customer-oriented 3D configurator, its functionality was limited to checking the compatibility of details produced by Renold and visualizing them. To place an order, customers had to manually compile a list and send it to the sales team, who then processed it using an Excel spreadsheet with quoting logic written in a legacy VBA language. 

The tech gap between the 3D configurator and the quoting system led to a range of operational problems:

  • Slow order processing, as quoting alone used to take 1-2 working days
  • Time-consuming manual steps that could be easily automated if both systems were written in the same programming language
  • The headache of aligning updates across the two separate systems
  • Scaling limitations of the legacy quoting system, which capacity is directly tied to the number of employees processing quotes

Renold wanted to simplify and fast-track the quoting process by integrating quoting functionality into the 3D configurator.

Solution

As the 3D configurator was written in JavaScript (JS), the main task of *instinctools’ legacy modernization team was to rewrite the quoting functionality in JS and embed it into the configurator.
  1. Deconstructing VBA Excel workflows

VBA is a specific language designed to work hand-in-hand with Excel, so its operational logic is tightly interlinked. Re-creating it in another programming language couldn’t be done by simply converting VBA code to JS.

Our team needed to thoroughly analyze and reverse-engineer the VBA workflows to fully understand their logic before translating them into JavaScript. Key tasks included:

  • Manually re-creating out-of-the-box VBA Excel capabilities, such as drag-to-fill and pattern-based formula propagation, in JavaScript
  • Designing custom logic for handling dynamic rows
  • Rewriting complex fill patterns into explicit index math

Instinctools’ engineers collaborated closely with Renold’s team to ensure the new system mirrored the component matchability logic from the legacy system down to the last detail.

  1. Integrating the newly written quoting feature into the 3D configurator

We incorporated the new quoting engine as a standalone module into the existing 3D visualizer. With design and pricing being merged into one fluid experience, users can now assemble complex mechanisms by themselves and request a quote from the relevant Renold sales office right away.

A laptop screen displays a Request a Quote form with a dropdown menu for selecting a sales office (Germany selected), a blue Generate Quotation Email button, and a technical diagram with orientation and style options above.
A laptop screen shows a dropdown menu with countries and cities selected over a 3D model of a conveyor system. Germany is highlighted in the menu. The right side displays blue buttons for orientation and style above the conveyor model.
  1. Simplifying price updates

Automating quote generation was a significant step forward that accelerated the workflow from 1-2 days to under 30 minutes. However, there was another order processing bottleneck the client wanted to address. In the previous setup, whenever the prices of the chains, gears, and couplings were changed, Renold employees had to manually adjust them in the VBA code.

Our dedicated team reorganized the workflow so that prices inside the quoting module update automatically. Here’s how it works now:

  1. The client’s staff updates prices in an Excel file and uploads it to AWS S3.
  2. AWS Lambda reads the file and transforms it into JSON data, storing it in the same folder.
  3. AWS Lambda keeps the parsed JSON in fast memory to serve repeated requests faster.
  4. The 3D configurator retrieves prices by sending requests to Lambda.
A flowchart segment shows “Client staff” sending data to an “Excel price list.” From there, arrows lead to “High-speed cache,” “AWS S3,” and “AWS Lambda.” A dashed box contains the “3D configurator,” connected to the rest by an arrow.

This approach also helped keep CPU load low and performance high, with price checking done in under 10 milliseconds.

Before

  • Mostly manual, Excel-based quoting
  • Mechanism visualization and quoting exist separately
  • Quoting takes hours or even days
  • Price updates require VBA code modification
  • Two separate codebases to maintain
  • Scaling required more staff

After

  • Fully automated quote generation
  • The quoting feature is embedded into a 3D visualizer
  • Quoting is completed in under 30 minutes
  • Price updates are handled automatically
  • One unified codebase
  • System scalability without increasing headcount

Business value

  • Automated quote generation and price updates
  • x32 faster order request processing
  • – 60% of man-hours spent on quoting
  • + 17% in quote-to-order conversion

Client’s testimonial

Odoo Migration For a Furniture Manufacturer and Retailer

Odoo Migration For a Built-in Furniture Manufacturer and Retailer

How replacing a home-grown, feature-poor CRM with Odoo CRM and Loyalty & Rewards functionality enabled a Polish built-in furniture manufacturer and retailer to save ≈ $600,000, increase lead-to-order conversion from 1.4% to 3%, and boost customer retention by 10%.

Industry:
Retail, Ecommerce

Legacy Software Modernization

Enterprise Automation

Business challenge

When your core business systems fall behind the pace of your company’s growth, the gap between potential and performance tears open so wide that it becomes impossible to ignore.

Our client, a Polish furniture retail company, reached that 
point. Their legacy self-written CRM, tightly coupled to their ecommerce platform, had become a growth blocker.

Staff
used to face CRM freezes every morning when all employees logged in at once

Loading a customer profile or order history could take up to 25 seconds. For a company operating in three cities, it caused delays in order processing even outside peak seasons.

Customers’
website experience suffered, too

If product or checkout pages took more than 4-5 seconds to load (a frequent occurrence due to real-time CRM calls), visitors bounced and carts were abandoned.

Besides poor performance, outgrowing their existing system manifested in the lack of functionality and limited scalability:
  • No lead tracking

The client used many different channels for customer acquisition, including paper flyers, SMS campaigns, cold and hot calls, and several websites. But without solid tracking mechanisms in place, they couldn’t tell where and when a lead arrived, and see which lead generation strategies made the most impact.

  • Slow feature development

As all the functionality was hard-coded, adding new features such as lead tracking (or even minor tasks like adding new fields) required code changes and complex database schema redesigns. But the client’s in-house team was already swamped by technical debt and had no bandwidth for new feature development.

  • No multi-language support

The client planned to expand into neighboring countries, starting with the Czech Republic and Slovakia, and had to ensure the CRM could be localized for future on-site teams.

  • No system for tracking repeat customers

It was vital to boost hyper-personalization, reward loyal customers, and encourage repeat purchases at scale through a targeted discount system.

To top it all off, the old system was largely undocumented, with the CRM creator as its sole knowledge keeper. This put core business processes like customer and order management at risk of being bottlenecked by a single individual.  

Caught between either squeezing more out of their existing CRM or replacing it with a more feature-rich, scalable system, the client needed a seasoned CRM partner to estimate the budget for both paths and implement the winning option. Instinctools brought the hands-on experience needed to navigate the decision and act on it. 

Solution

First, to address the “stay vs. migrate” dilemma, our business analyst modeled both options over a three-year perspective.

  • Modernizing the legacy CRM

to make it more scalable, crafting a loyalty module from scratch would have cost the client around $300,000, and then just as much yearly to maintain this house of cards.

Three-year TCO ≈ $900,000 at the very least
  • Switching to an up-to-date SaaS CRM

with a ready-made loyalty module would have required up to $150,000-250,000 for initial migration and then $60,000-120,000 yearly for licenses and software upkeep 

Three-year TCO ≈ $330,000-600,000

With the possibility of nearly triple cost savings over three years, combined with all vital functionality and unlimited scalability, the direction was clear: migrate. Next, we had to decide on the SaaS CRM best aligned with the client’s needs. 

There were three options on the table: Odoo, Salesforce, and SAP. Considering the client’s time, budget, and flexibility constraints, Odoo, with its CRM module and Loyalty & Rewards functionality, spoke directly to their needs:  

  • All the requirements covered out of the box, without costly add-ons, integrations, or heavy customization 
  • Faster time-to-value thanks to pre-built modules
  • Lower vendor-lock-in and higher flexibility due to the system’s open-source foundation

We followed a master-replica switch strategy to achieve the industry’s below-5-second downtime gold standard. Instinctools’ dedicated team had to do a lot of the groundwork to ensure a smooth transition from the old environment to the new one.

  1. Pre-migration

Since the client’s self-written custom CRM was riddled with numerous undocumented customizations that could make things trickier down the road, we began by reverse-engineering and documenting the old system. With our AI-powered practices in SDLC, the task took only two days instead of the usual three weeks it would have required if done entirely by humans. 

The team also used AI tools for data-related operations for data quality checks, its cleansing, mapping, and backup, as well as archiving outdated and unnecessary data. That way, we sped up the tasks by 60% while cutting their cost by 35%.

At this stage, we also reviewed data encryption mechanisms to ensure they won’t slow down software performance. To strike the right balance between speed and security, we chose selective encryption for database fields, rows, and columns containing PII instead of encrypting the entire dataset.

  1. Legacy CRM
    to Odoo migration

Our Odoo implementation team moved in iterations. First, we defined a migration framework – a clear, structured plan for moving data from the 
old CRM to Odoo, which included: 

  • Transformation rules, such as merging duplicates, standardizing formats, etc.
  • Entity migration order with a dependency-aware sequence for tables, transactions, and related objects to ensure their interrelationships don’t break downstream
  • Error-handling procedures with the rollback-and-retry strategies, if any issues arise during migration
  • Data integrity checks to confirm that no inconsistencies or errors slip through 

With the framework in place, we ran a small-scale test migration to spot and fix edge cases. After refining the playbook, we proceeded with the full migration, which kept business operations uninterrupted, staying well within the below-5-second downtime standard.

  1. Odoo Loyalty & Rewards module adoption

Odoo modules are designed to click together like LEGO, so we implemented the loyalty module and wired it to the CRM for a continuous data flow of customer info, purchase history, and more. With promotions fully digitized, the client gained two immediate wins

  • Automated calculation of loyalty percentages and customer recognition across different channels 
  • Advanced personalization thanks to tailored recommendations of additional products

Both the CRM and loyalty modules provide built-in analytical dashboards, which we customized to track the client’s key metrics. New easy-to-grasp visualizations replaced clunky Excel tables.

A dashboard titled Legacy CRM displays a table for August 2025, showing various KPIs with columns for code, group, criteria, unit, previous year, target, actual, percentage against previous year, and target index. A search bar is at the top right.
A digital dashboard interface with colorful widgets on the left showing sales, purchases, payments, and accounts data. Two overlaid panels display various charts and graphs, including bar, line, and pie charts, under the Odoo label at the top.
  1. Post-migration

To make sure the system was fully prepared for daily use, we: 

  • Tested performance under real-world load

The dedicated team checked the system for speed and stability to verify that the user experience is hitch-free. 

  • Enabled end-users

We ran online training sessions to help staff quickly adapt to the new software and shared recordings for ongoing self-training and easy refreshers. 

  1. Extra-mile website performance optimization

Since the CRM is tightly integrated with the client’s ecommerce platform, improving website performance and customer experience was a strategic part of our migration efforts. Instinctools’ team:

  • Implemented Nginx as a load balancer to distribute requests across multiple application servers, ensuring higher availability and smoother performance during traffic spikes.
  • Added Redis as a smart caching layer for frequently accessed data, reducing response times and improving overall system performance.

Those efforts resulted in faster page loading speed and a 20% drop in cart abandonment rate.

Before

  • Legacy, feature-limited CRM with poor performance
  • Largely undocumented software reliant on a single knowledge keeper
  • Costly to scale and maintain

After

  • Up-to-date, feature-rich, customizable CRM
  • SaaS software with detailed documentation
  • Easy to operate and scale across regions

Business value

  • ≈ $600,000 TCO savings
  • < 5-second downtime during the transition from one system to another
  • x 2 in lead-to-order conversion via automated conversion pipelines and timely follow-ups
  • + 10% in customer retention thanks to the adoption of a trackable loyalty program and targeted offers
  • + 15% in marketing ROI through clarity on high‑ROI channels and wise budget reallocation

Multiplier effect

The desire to stick to legacy software that still works is perfectly rational, especially when the sticker price of modernization looks higher than patching holes and creating temporary crutches. But there’s always a tipping point when outdated software starts working against you more than for you.

Weighing different options of dealing with legacy systems, you may need expert guidance. That’s when seasoned software consultants can step in with proven strategies to address the challenges in your CRM, ERP, or other systems.  

Two people work at a desk covered with architectural blueprints, a calculator, eyeglasses, and a laptop. One person writes with a pencil on a document, while another stands nearby holding a notebook. The scene suggests collaboration and planning.

Google Workspace to Microsoft 365 Migration For a Medtech Company

Google Workspace to Microsoft 365 Migration For a Swiss Medtech Company

Neo beyond the expected white logo

How migrating from Google Workspace to the Microsoft 365 suite enabled a medtech company to establish a secure and scalable enterprise-wide collaboration environment without missing a beat in their everyday operations and reduce operating expenses by 50%.

Industry:
Healthcare, Technology

Enterprise Automation

Legacy Software Modernization

Business challenge

As companies expand, they often outgrow the tools and services they relied on in the early days of their existence. What once worked for a lean team of 20–30 employees can quickly become a bottleneck as headcount climbs past 100.

Our client, Neo Medical, is a medtech company that started with Google Workspace tools. At some point, they broadened their toolset with Microsoft products, namely, Entra ID (former Azure AD) as an identity and access management solution, and Office 365 package.

Still, most of their daily tasks, including drafting documents, preparing reports, and handling internal communication, remained heavily tied to Google Workspace, coupled with other SaaS tools, like Tresorit as a cloud storage and Skype for communication.

This setup had several drawbacks:

  • Doubled operational expenses as the client had to cover the fees for both Google and Microsoft products.
  • Compromised security, even with Microsoft’s Entra ID providing fine-grained access control. The Google Workspace-centered environment lacked deep threat analysis capabilities, built-in data loss prevention measures, and highly configurable software security monitoring tools.
  • Integration friction due to the reliance on tools from different SaaS vendors. While some tools, like Tresorit, provided integration with the Google platform by design, others, like Skype, didn’t, introducing extra integration complexity.
  • Lack of seamless collaborative experience for employees who had to juggle separate tools.

As the company grew and more of their clients expected enterprise-grade security and seamless data protection by default, the need for a unified, secure, and scalable IT environment became urgent. Though the idea had been on their radar for months, Microsoft’s February 2025 announcement to retire Skype within three months made it clear that it was time to act.

Neo Medical decided to move from Google Workspace to Microsoft 365 and started looking for a tech partner who could migrate them from one suite to another with zero downtime. Even 10 minutes without access to email servers meant the client could potentially miss high-priority external emails. Having extensive experience in carrying out such migrations, Instinctools stepped in.

Solution

In this case, our business analyst played a crucial role in gathering and documenting all the nuanced requirements the client had. With such a precise approach, every crucial detail was factored in, preventing data loss, jerry-built integrations, security gaps, undisabled licenses, and performance issues in the new software ecosystem.

Meanwhile, the dev team automated the assessment of their current environment. They used MigrationWiz to scan and catalogue mailboxes, Drive shares, and Skype workspaces.

Choosing between a one-time switch and approaching things gradually, we opted for migrating in stages to ensure a smooth transition, catch and resolve potential hiccups in the bud, and minimize the employees’ resistance to change.

Since the client’s staff was already using Entra ID for identity and access management, we didn’t have to onboard their accounts and devices into MS365 systems and went straight to migrating data from one tool to the corresponding one in the Microsoft suite. Given that mail and calendar were vital for the client’s everyday operations, we decided to start with these systems and then take care of the secondary services.

  1. Gmail and Google Calendar to Outlook Mail and Calendar migration

To ensure zero downtime, our team started pre-staging migration activities while Google services were still live. Here’s how we handled the whole endeavor.

  1. Two weeks before cut-over, we set up MigrationWiz to do a background sync and copy all Gmail messages, labels, user-created folders with filtering rules, and calendar events to Exchange Online. By doing this in advance, we had to copy only the most recent emails and last-minute calendar updates during the final switch, when we planned to fully transition from Google Workspace to Microsoft 365.

  2. Four days before the final shift, we reduced the mail-exchange (MX) record’s time to live (TTL) from its default 3,600 seconds down to 300 seconds. This ensured that, during the final Friday-night switch, the change would spread almost instantly, with external mail servers learning the new delivery route within about 5 minutes instead of an hour.

    By finishing 99% of the data migration beforehand, we minimized a coexistence phase where two inboxes and calendars must be monitored and protected simultaneously. This prevented downtime and significantly reduced the window for potential interception-based threats.

  1. From Friday, 6 PM, with all users logged out, Google kept accepting new mail and instantly forwarded it to Exchange. All inbound messages landed in the new mailbox.

  2. Simultaneously, Outlook began publishing free/busy information into Exchange, and Google Calendar was switched to “forward-only” mode to redirect any new calendar events sent over the weekend to Exchange Online.

On Monday next week, the client’s staff logged into a new environment with their existing sign-in data. Only this single “hello, Microsoft” moment greatly contributed to minimizing end users’ resistance to change.

We kept Gmail and Google Calendar in forward-only mode for four days after the cut-over. Any mail reply or meeting update sent from an old Google tab was automatically forwarded to Exchange Online, so conversations and invites flowed on without interruption.

A Google Calendar interface shows the “Tasks” checkbox in the left sidebar being unchecked, with a green arrow pointing to its new status—unchecked and grayed out—causing the purple “Tasks” events to disappear from the main calendar view on the right.
  1. Skype to MS Teams migration

Since Skype and Teams organize group communication differently (channel groups vs. private teams), we could only transfer contacts from one tool to another. As with other migration steps, we planned the final move for Friday evening, but started preparations in advance:

  1. A week before the company-wide switch, we launched Teams in parallel mode and installed it on department managers’ laptops. These seven people became pilot users, gaining instant access to the new communication tool without having to download or set up anything themselves.

  2. Five days before the final shift, we moved these seven pilot users to Teams-only mode so that they could create relevant core Teams and channels and add users from Entra ID. As a result, when the rest of the employees logged into the new tool, they were automatically added to all the necessary teams and channels, ready to start working without any setup delays.

    At this stage, department managers had two systems running simultaneously, but this arrangement remained invisible to other employees still using Skype and had no impact on the ease of communication. For example, if  C-level manager Alice sent a direct message to employee Bob, Bob saw a standard Skype pop-up. And if Bob sent the message, it appeared in Alece’s Teams client inside a special “Skype user” chat tab. 

  3. On Friday, at 6 PM, we moved the rest of the employees to a Teams-only mode and set Skype to read-only.

On Monday, staff logged into Teams with their existing credentials and kept working as usual. The only noticeable change was the ability to integrate third-party apps like HubSpot, Jira, Miro, etc., to Teams to streamline daily routines with simple automation. We whitelisted trusted applications to ensure the client stays on the safe side.

As with mail and calendar, we left Skype available only for data verification purposes for four days post-migration and disabled Skype licenses after this period.

Migration from Skype to Teams not only provided the client’s staff with a feature-rich communication tool, but also contributed to tighter access control and security. In the new environment, collaboration is structured around private teams only, with no public teams allowed. For example, a BizDev or a LeadGen team includes only the users who need to collaborate on those workflows. If someone needs access to another team, they must request permission from the team owner. Such an approach reduces the risk of data exposure and keeps sensitive information confined to appropriate circles.

A split-screen shows two chat applications: WhatsApp Web on the left in dark mode with blue chat bubbles, and Microsoft Teams on the right in light mode with a list of contacts and an open chat. Both display blurred-out messages for privacy.
  1. Tresorit to Microsoft’s OneDrive migration

Along with the shift from Skype to Teams, we transferred the client’s data from Tresorit to OneDrive using a similar approach. However, there were two cloud storage-specific requirements to keep in mind:

  • The client didn’t need all the history data migrated, as keeping all versions would be time-consuming and costly. We agreed on moving only the latest versions but keeping their Tresorit subscription for another 90 days in case auditors or R&D staff need to check any old version that wasn’t imported.
  • They wanted the new system to mirror the old one in structure and permissions to make the transition as seamless to the employees as possible. To achieve that, our team replicated the whole folder hierarchy and named the new OneDrive folders the same way they were in Tresorit. The only thing that changed for the end users was the cloud storage icon.

How did this shift elevate security? Previously, Tresorit’s file vault and the company’s device‐security controls worked in silos, and a user could still open or edit corporate files even if their laptop was out of compliance, say, running an unpatched OS. Now, with OneDrive, the client has a single entry checkpoint, when access to the company data is granted only after both multi-factor authentication and device-compliance checks are passed. If either gate fails, the files stay locked.

  1. Staff training

Besides ensuring a stress-free migration from one software suite to another, our best practice is to offer hands-on staff training. In the client’s case, our team:

  • Held an online adoption workshop (two 2-hour sessions) on working with Microsoft 365 tools
  • Provided ongoing support to employees for a whole month following the migration by answering their questions in a dedicated Teams channel

Before

  • A set of fragmented tools
  • Compromised security
  • Disjointed user experience due to a tool sprawl
  • High operational expenses

After

  • A single feature-rich collaboration platform
  • Perfected security measures
  • Unified user experience across the entire software ecosystem
  • Optimized expenses thanks to replacing several different tools with a single communication platform

Business value

  • 50% drop in software operating expenses
  • 70% of security incidents are intercepted at an early stage when they’re less costly to fix
  • 1.5 hours more of usable time per employee weekly, thanks to operating within an end-to-end collaboration platform

Client’s testimonial

Here’s how a transformation lead on the Neo Medical side describes the project’s flow and results:

Multiplier effect

Whether it’s moving from one collaboration platform to another, switching CRMs, or replacing spreadsheets with an advanced analytics tool, there’s always room to evolve for the sake of stronger security, more scalable workflows, and higher efficiency. Having a seasoned tech partner by your side can make the shift stress-free.

A person uses a laptop while touching a virtual screen with glowing digital icons, including lists, cloud upload/download symbols, documents, and an 80% progress indicator, suggesting data transfer or cloud computing activity.

Software Modernization For a CX Company

Software Modernization For an Ultimate Market Leader Among Personalization Engines

How switching from deprecated AngularJS to up-to-date React and crafting a custom UI kit helped a global SaaS customer experience (CX) company facilitate maintenance of their personalization engine and speed up design-related tasks.

Industry:
Technology

Legacy Software Modernization

Business challenge

Understanding that nothing lasts forever helps ambitious SaaS companies truly excel. Organizations pushing their field’s boundaries can’t peacefully rest on laurels. They have to put a premium on constant product evolution, spanning three areas:

  • Building a unified tech stack
  • Ensuring the code aligns with the current best practices
  • Enriching the product’s features

 

Focusing on the above-the-surface part, or implementing new features, to win and retain customers, companies tend to neglect the technical foundation that can spell significant trouble without essential upkeep.

The aging heterogeneous tech stack was the only vulnerable spot of our client – an unbeatable market leader among SaaS personalization engines. They have already blazed a trail in customer experience (CX) solutions with their cutting-edge personalization engine, which empowers B2B and B2C companies to reach their potential customers across any channel and device with highly targeted offerings. However, their core products’ front end in AngularJS:

  • Didn’t match the client’s current tech stack in React
  • Complicated software maintenance as support from Google ceased in 2018

To eliminate these hindrances, the client decided to migrate legacy AngularJS code to cutting-edge React.

Additional benefits of switching from AngularJS to React included:

  • Flexibility in organizing the software code as React is a UI-focused library, while AngularJS is a model-view-controller (MVC) framework with a set of predefined design patterns.
  • Accelerated performance thanks to React’s reliance on the virtual document object model (DOM), which allows changes without updating the entire page.

The client has already started code migration from AngularJS to React but soon hit a roadblock: their in-house team has neither time nor capacity to juggle both feature development and legacy modernization. Therefore, the client decided to hand over the migration part to a tech partner.

However, finding an ally they could trust wasn’t a walk in the park, as the client previously had a negative experience with an outsourcing company, making them cautious this time around. Determined to avoid the same pitfalls, they came up with strict technical and soft skills-related requirements for the future partner so that only the best would make the cut:

Battle-proven expertise

in both AngularJS and React

Accurate planning

and sticking to the outlined timeline

Proactiveness

in decision-making to strengthen their core team

Top-level soft skills

for swift communication and synergy with their in-house team

ISO certifications

namely ISO 9001:2015 and ISO 27001:2022

According to the client, *instinctools turned out to be the perfect fit. How did the migration go and what were the extra efforts we put in?

Solution

The client had already outlined an overall migration strategy and prepared the infrastructure, so our team picked up the code migration while perfecting existing functionality and fixing bugs.

  1. Replacing a rigid legacy tech stack

We were responsible for rewriting several solutions within the client’s software ecosystem. Some of them raised notable challenges, such as their legacy customer journey mapping platform.

The client’s system was a sore spot because of its:

  • Fragmentation. The platform consisted of six sub-systems, each written by different developers at different times.
  • Documentation void. Without system documentation or knowledge keepers left in the company, rewriting the solution became a daunting task.

We had to replace this ticking time bomb with a single user-friendly React solution. To achieve this goal, our team:

  • Analyzed the platform’s code to figure out the best way to rewrite it
  • Prepared updated software architecture from scratch
  • Selected Nx library for collecting code from different microservices and a Vite bundler to set up a development environment for React
  • Replaced six disconnected microservices with a monolith
  • Migrated libraries from AngularJS to React
  1. On to new challenges

Six months after the start of our cooperation, the client trusted our team enough to delegate the tasks beyond the migration. That’s how we started working through their overall backlog and participating in R&D activities.

Taking on the primary stage of their research efforts

The client wanted our team to join their ongoing in-house research dedicated to creating a custom UI kit:

  • Explore and examine current best practices in crafting compilations of UI components
  • Draw up suggestions for their custom UI kit

Impressed with the proactiveness of our team, the client asked us to join the UI kit development.

Assisting in crafting a custom UI kit

Just as with the AngularJS to React migration, the client had already invested efforts in building UI components in line with the company’s brand book. And much like switching to the more up-to-date tech stack, they also needed reliable, high-qualified partners to carry out the UI kit development.

Before our team knuckled down, the client got tangled up in their existing visual components, such as buttons, checkboxes, widgets, etc., scattered across various sources.

Here’s what we did to help the company stop wasting their time and effort:

  • Created a single library for all UI components to enable simple reuse across all the client’s current and future products
  • Collaborated with their in-house design team to create and implement a multitude of UI elements, enhancing consistency and efficiency

Before

  • Heterogeneous tech stack of their SaaS CX solution
  • Challenging product maintenance because of six siloed microservices
  • Absence of a robust UI kit
  • Massive backlog
  • Lack of experts to run technical research

After

  • Unified tech stack for the client’s SaaS personalization engine
  • Simplified product maintenance thanks to monolith architecture
  • Solid custom UI kit
  • Reduced backlog
  • Support of dedicated experts in R&D activities

In our client’s words

Frontend Guild Manager on the client’s side outlines their impressions of cooperation with *instinctools:

Software Licensing System Modernization

Legacy Modernization For a Software Licensing Company

How a security tech manufacturer cut costs on the system maintenance and gained ISO 27001:2013 certification

Industry:
Technology

Java development

Legacy software modernization

Business Challenge

What issues were restraining our client?

When it comes to modernizing legacy systems, companies tend to put it off until the very last minute. The reasons for that might be different: additional expenses, difficult orchestration of the initiative, resistance to change… However, the risks arising from doing nothing are equally high for everyone and there usually comes the point when hanging on to the old software is no longer possible.

That’s what happened to our client, a global licensing software developer. They delayed updating their back-end software until they had an urgent need for ISO27001:2013 certification. And it hit in 2022 when the updated certificate version, ISO27001:2022, came out.

That was where our client needed expert support. They created their licensing software in the early 2000s. Those were unique, state-of-the-art solutions, which worked securely even 15 years after the release. When the client held a hacking contest to test and evaluate the system’s reliability, none of the participants succeeded.

However, with time, some technologies tend to be replaced by others, and legacy software is no longer supported by the provider and doesn’t receive security updates, becoming your Achilles heel. The same situation became the main driver for legacy system modernization at our client’s organization. 

The client product was based on the outdated SOAP API and legacy Apache products, such as the Axis2 framework and the TomEE 7 application server. TomEE 7 stopped receiving security updates in 2021, so the client updated it to the next version to get ISO 27001 certification. However, this change led to other ones, as TomEE 8 wasn’t compatible with the Axis2 framework they used. 

At this point, the client realized that dealing with those changes would be beyond their capacity and capabilities. Hence, they started looking for a company with expertise in legacy system modernization. 

The task was complicated, as they had never outsourced software development and finding a software company that would fully meet their requirements was problematic. 

What were the client’s mandatory requirements for the future tech partner?

  1. Location in Europe and compliance with European security regulations. The client was looking for a technical partner among European companies that follow strict data security regulations and hold ISO 27001:2022 and ISO 9001:2015 certifications. It was also crucial to be in the same time zone to quickly resolve working issues.
  2. Expertise in both legacy and up-to-date software. Finding a developer who can work with Axis2, as this framework is obsolete and rarely used, was a tough legacy system modernization challenge.
  1. High security demands to the development team. The client was looking for a team that would work with their software on-site by using keys (dongles) that would be sent to a flash drive.

Having a wide array of strict requirements, the client chose to entrust their fulfillment to *instinctools as a global software development company with extensive expertise in delivering innovative solutions since 2000. Over this time, we’ve built a skillset based on a diversity of technologies ranging from PHP to Python and React. Given the talent crunch in the modern IT industry, such an extensive expertise is truly appealing to our clients. 

Moreover, our headquarters is located in Germany, and we follow strict European regulatory requirements for data security, such as GDPR, EDPB, DPLE directive, etc.

Our team can also work as an offshore development center providing a secure physical perimeter for the project.

Thanks to competitive advantages of our company, we passed the client’s rigorous selection process.

To enable the client to get ISO 27001 certification, we needed to modernize legacy systems, for instance, the SOAP API through which the requests such as license creation were sent. For this purpose, we decided to upgrade the existing back-end system under the SOAP API to receive regular security updates.

Solution

Moving fast but radically or slowly but surely?

After evaluating the project, we offered the client two legacy system modernization strategies to choose from.

Renovating the existing software to the most up-to-date solution.

The most advanced option would be Spring. It’s an open-source Java-based framework that empowers developers to build high-performing applications. It is currently the standard of enterprise software development, with no analogs, as Spring can cover all the needs of enterprise out of the box. Moreover, it’s an actively developing framework, which implies the constant contribution of new features and security checks.

Going step by step by upgrading the versions of existing software and, eventually, coming to Spring.

If a client isn’t ready for substantial infrastructure changes (which, for instance, Spring requires), they can move gradually.

With this approach, they could pass ISO 27001:2013 certification, and while it’s valid, deal with the rest of the innovations and implement Spring at a comfortable pace. And with the updated technology stack, they’ll be able to go through ISO 27001:2022 certification later.

Since this was the client’s first experience with an outsourcing company, they wanted to move in small iterations and decided to follow an incremental legacy system modernization approach.

It’s also important to note that our client has been creating IT solutions for software licensing for over 30 years, and their development team has stayed the same from the moment of the product release. On the one hand, it was helpful because the client’s team knew the product down to the last detail. On the other hand, they got used to relying on outdated technology stacks and approaches. To switch straight to a cutting-edge solution, the client would have to invest a lot of time in knowledge transfer to their specialists. 

Therefore, the client chose a more granular change so that they could reap the benefits of modernizing legacy systems, with the team gradually adapting to the new environment and gaining knowledge about working with state-of-the-art technologies.

Before turning to *instinctools, the client had already upgraded TomEE 7 to the 8th version. However, it was later discovered that TomEE 8 couldn’t work with Axis2 and requires another framework. Since Axis2 is an Apache product, we offered to switch to another Apache framework – CXF that has replaced Axis2 as a more present-date solution.

Nevertheless, code migration from Axis2 to CXF without changes is impossible as these frameworks have dissimilar approaches to code writing. Axis2 works with abstractions and classes, while CXF works with data models. Therefore, besides code migration, we tailored the code to the new framework. 

We did code refactoring and uncovered parts of the code for which more elegant solutions could be used. 

Going beyond expectations

If we see an opportunity to do more for the client, we never hesitate to go for it. In the case of legacy system modernization for our client, we provided them with a few extra-mile solutions.

  • Updating Java

    The client had Java 8, which was compatible with TomEE 8 and CXF. However, Java 11 contains an updated encryption protocol (TLS 1.3 instead of TLS 1.2), which is faster and ensures a higher security level, so we installed Java 11.
  • Implementing annotations for authorization service

    The legacy client authorization model was based on roles, where each user had their own role with specific access rights. We switched it to a new model based on annotations. This legacy system modernization approach significantly reduces the amount of code and simplifies maintenance, as clear code written according to modern standards is easier to maintain.Moreover, familiarity with annotations is another small step toward Spring implementation in the future. This framework extensively uses annotations, and if you haven’t encountered them before, it’s hard to figure them out.
  • Detecting bugs in the client’s testing system

    For the client, one of the criteria that the legacy system modernization project was done correctly was to pass their tests. They provided us with their test infrastructure. However, we found bugs in those tests, such as PHP clients connected to an outdated framework. We reported them to the client so that they could fix them.

Along with upgrading legacy systems, we trained employees on the client side to ensure knowledge transfer so that they could feel confident working with CXF and TomEE 8.

Investing in the future: what’s next?

We’ve carried out legacy system modernization for the client considering upcoming ISO27001 certification and the switch to Spring in the future.

The client was successfully certified and received ISO 27001:2013 in November 2022. 

By that point, our project had been over, but we consulted the client on the next steps of their legacy software modernization. As they were totally satisfied with our collaboration, they decided to keep working with *instinctools in the offshore development center format and gradually move toward Spring to adopt it by 2025. By that time, the ISO 27001:2013 certification will have expired, and with the updated software, they will be able to obtain ISO 27001:2022 certification. So at the moment, we have two more legacy system modernization projects with the client and look forward to bringing them the same value as in the first project.

Key features

Flexibility

Refactoring the code according to modern standards allows the client to expand the range of specialists they can hire as more developers can work with clean code.

Scalability

Switching to an up-to-date framework and application server has made our client more adaptable and prepared for subsequent steps of their legacy system modernization journey.

Modernization

Transition to an authorization model based on annotations has made the upkeep of the system easier and minimized the codebase.

Business Value

  • Software modernization for ISO 27001:2013 certification obtainment
  • The backbone for future Spring adoption
  • Simplification and cost reduction for staffing and maintenance

Multiplier Effect​

Legacy system modernization is valid for any industry. However, the SOAP API, which is the basis of the legacy system in the case of our client, is prevalent in banking. For banks that have existed for more than a couple of decades, an abrupt transition to up-to-date software is also challenging because of drastic infrastructural changes and time for knowledge transfer.

And that’s ok! Switching to a cutting-edge REST protocol just because now it’s considered a standard is not the only option available. We don’t swing to the buzzwords and choose the most appropriate solution considering your requirements and limitations. As in the case of our client, you can stay on SOAP but upgrade your backend software to meet your actual needs and ambitions. Partnering with a PHP development company experienced in legacy system modernization will ensure you a smooth transition while maintaining compatibility with existing frameworks and infrastructure.

Legacy Software Modernization For BioTech

Legacy Software Modernization For BioTech

How modernization of a legacy system and implementation of real-time dashboards empowered a leading BioTech manufacturer to accelerate drug development by 100+ days, enabled remote monitoring and control of pharmaceutical production, and cut down onboarding of new hires from three days to six hours.

Industry:
Biotech

Duration:
6 months

Team:
four web-developers, UX engineer, QA engineer, and a project manager

Challenge

Market leaders need to continuously advance and innovate their products’ software using modern technologies. Otherwise, their achievements can be ruined due to the high level of competition.

The software our client, a global biopharmaceutical manufacturer, uses for controlling the production process of medical treatments has a particular control module for administration, monitoring, and analysis. The problem was that this complex three-component module only had a desktop version. Old legacy code added even more complexity to the project and hindered software modernization and the implementation of new features.

At first sight, the requirements set for the project development team were quite clear, and the estimated time for the deployment was pretty short. The *instinctools team organized a Discovery Workshop with customers’ representatives to prevent surprises. When diving deeper into the technology stack, the datasets the customer used, and other software details, our engineering team discovered new challenges that implied a different approach to solution delivery was needed.

First of all, the architectural approach of using NATS as a messaging system, selected for the existing solution, complicated and slowed down the development process and couldn’t enable fast and real-time access to the data via web browser apps.

The challenge was related to the Pathfinding algorithm that wasn’t appropriately described to repeat the work of the outdated application.

Solution

*instinctools engineering team of four web-developers, UX engineer, QA engineer, and a project manager were working on the project for six months. They managed to reverse-engineer the legacy code, going through more than 1,000 rows from XML files manually to understand the actual logic of the module and how the graphs and tables were built and organized.

In coordination with the back-end development team, *instinctools’ engineers built the front-end part of the web application from scratch. We also implemented a modified Pathfinding algorithm that enabled us to embody the look and feel of the old application in the new one. Our experts compiled the NATS library using alpha source code from the repository and implemented numerous fixes to ensure everything worked as expected.

According to the project requirements, the *instinctools team enabled smooth application updates in real time using WebSocket and crafted a user-friendly design following the customers’ brand book guidelines and tech specs.

The web application we built for a controlling module allowed its users to seamlessly monitor and control the process of medical treatments production on the manufacturing device directly or remotely. The user-friendly interface with real-time information updates helped administrators smoothly track and manage module operations and quickly react to potential issues.

With a new code written to modern standards, our customer will implement new features and modernize the application faster.

Key features

  • Real-time updates on the dashboards in controlling, monitoring, and analysis components of the module;
  • Visualized and structured data;
  • Web access via a compatible browser;
  • Responsive user interface and renewed corporate design.

Business Value

The newly modernized process visualization module with increased performance and quality allowed our client to reduce employee training time and improve their workload efficiency. The final solution gave the company’s customers the ability to easily integrate the visualization into any hardware capable of showing web applications.

Real-time dashboards and visualizations, accompanied by an intuitive user interface, allowed system managers to control the manufacturing process, reducing industrial incidents effectively.

The updated product, complete with the new functionality implemented by the *instinctools team, allowed our client to innovate faster and remain a market leader in its niche.

Technologies

React
Nats.io
Microsoft Azure DevOps
Figma

LMS Architecture Modernization For a SaaS Company

LMS Architecture Modernization For a SaaS Company

How dividing legacy monolithic architecture into microservices helped a global LMS producer to hop on the train of remote work with their updated LMS application for staff training and raise the number of customers worldwide by 37% without risking business continuity.

Industry:
Education

Duration:
11 months

Budget:
$200 000+

Team:
three FTE engineers, two QA specialists, project manager, business analyst

Context

With the client’s LMS platform, users can access up-to-the-minute data, staff training results, average test scores, personal tests, performance appraisals, surveys, and financial data with comparative reporting. It allows every manager to train, track and communicate with employees, plus control company compliance nationally and globally.

Challenge

Our client has been planning to modernize some parts of their LMS for a while and, as is often the case, they haven’t gotten around to it until recently. However, the delay was no longer an option since Adobe Flash, where one of the modules was written, was on its way out. Major browsers have been slowly pulling support for years now, and Adobe itself has announced that it would be stopping the development and support of Flash at the end of December 2020.

So, at that point, modernization turned from a vague long-running goal into a clear necessity, that would prevent the loss of customers. At the same time, the client wanted to leverage the situation and not only make an updated application, supported by all browsers, but also implement a bunch of new features, that would be beneficial for end-users.

The client chose *instinctools since they wanted to lift the burden of managing the project off their shoulders and put it on a Tech partner providing a dedicated team, who would take responsibility for what they do and where the project goes.

Objectives:

  • Make a module for presentation editing supported by all browsers
  • Implement a new proposed design that improves the UX
  • Implement a working product by the end of December 2020
  • Keep performance on thе same level
  • Switch from Flash to modern technology
  • Turn the presentation tool into a standalone application, that will function as a separate microservice.

Solution

*instinctools dedicated team has developed a cross-browser application supporting mobile devices and tablets. The solution was based on new secure and scalable technologies. At the final and most challenging stage of the project, we migrated all the digital assets from a legacy system to a new structured microservice application without any loss.

Key features

  • modern and engaging design
  • completely customizable assets
  • ability to export presentations as printable documents (PDF)
  • ability to undo/redo most recent actions
  • copying, pasting, deleting, and rearranging multiple slides simultaneously
  • selecting and manipulating multiple elements at the same time
  • copying selected elements from one slide to another while maintaining the original positioning of each element from the original slide
  • ability to use keyboard shortcuts

Business Value

With the brand-new version of the application delivered just in time when remote work was a rising trend, it’s become possible for its users to create inspiring and meaningful content that makes remote or in-person activities way more impactful than they used to be. It helped our client to increase loyalty to a product and gain new customers globally.

Encouraged by our collaboration, the client plans to continue improving the software module by adding new features in subsequent phases.

Technologies

Legacy Software Modernization For a Global Heat Exchanger Manufacturer

Legacy Software Modernization For a Global Heat Exchanger Manufacturer

How switching from legacy, head-office dependent software to a cutting-edge solution, featuring a modern toolset and intuitive UX, helped the leading heat exchanger manufacturer eliminate manual maintenance tasks and lower software upkeep cost by 27%.

Domain:
engineering, heat exchanger manufacturing,
heating & cooling systems

Budget:
>200.000$

Duration:
1 year

Challenge

The engineering toolset, which the customer had been using for more than two decades, had become complex and outdated. The problem was that the software was based on old technologies and was developed by people who were no longer with the company. Its maintenance required added manual effort which led to higher process costs.
“We need a state-of-the-art solution” – that’s what our customer emphasized on during the Clarification Call with us. The customer wanted to have a modern software that would provide calculation results in a quick and easy way, as it is one of the key factors in heat exchange industry which affects the client’s decision in choosing the supplier.

The customer’s pain points:

  • slow and poor performance
  • strong dependency (if the system stopped working in the head office, it stopped working everywhere)
  • outdated approaches to user identification and authorization
  • the necessity to maintain their own environment, which took a lot of effort and was risk-prone
  • the problem of data backup and storage (local installations are not the most optimal backup solutions)
  • old-fashioned design and unintuitive functionality

Tasks:

  • to improve the efficiency of Sales / Order management process including further development of the tools and applications used by the customer
  • to integrate the tools with the customer’s authentication system
  • to use SharePoint as a document management and storage system
  • to stabilize the current system, retaining all of the system’s components and business logic
  • to upgrade UI by making it more current while minimizing changes in UX, thereby lowering the barrier to entry

Solution

The volume of work was quite substantial. It required a thorough analysis phase. At the start, the stakeholders in the customer company couldn’t come to a common understanding of what the project goals were. To make sure that the project implementation result will reflect what the customer really needed, it was decided to start with the Pre-Discovery workshop: we clarified all the details, discussed the customer’s pain points and chose the direction for further analysis. It prevented the project from going in the wrong direction from the very beginning and created a proper base for the Discovery phase

In this phase, we defined the tasks, planned the resources and the stages for implementation, and made the estimation of the project. This approach helped avoid wrong strategic decision-making and contributed to a successful project implementation: migration of the legacy system to Azure Cloud (fulfilling all the customer’s requirements) and implementation of the new UI.

Deliverables of *instinctools team:

  • Architecture improvements and technical solutions compatible with Azure Cloud
  • Project Charter with settled release processes and communication plan
  • CI/CD
  • UX/UI strategy and the implementation of new designs

Benefits for the customer:

minimizing errors and efforts for testing

making the maintenance process easier

lowering maintenance process costs to a minimum

reducing the workload (less time spent on requirements engineering and easy reuse of working modules)

unifying the whole process of equipment configuration

getting their software up to modern standards which makes addition of new features and upgradation of the existing ones cost and time effective

Technologies

Cloud:

Legacy Software Modernization For a US Top Market Research Holding

Legacy Software Modernization For a US Top Market Research Holding

How shifting from an outdated system to Apache Spark and AWS cloud services allowed a leading market research company to speed up data processing threefold and decrease software maintenance costs by 34%.

Challenge

Succeeding in today’s market is tough. Innovation is where breakthrough opportunities reside. But an innovative approach cannot be implemented without using up-to-date technologies.

Our customer embraces innovation just as we do. They needed to jump on the new technology bandwagon to operate optimally. That’s why they decided to migrate from legacy technologies to modern cloud infrastructure.

Tasks

  • Migration to Spark. Spark is used in a wide range of organizations for large-scale data processing. It allows running workloads faster, writing applications quickly in Java, Scala, Python, R, and SQL, combining SQL, streaming and complex analytics, and also facilitates custom Java software development. Spark runs on Hadoop, Apache Mesos, Kubernetes, standalone, or in the cloud. It can access diverse data sources.
  • Validation of business logic, which is critical to keep things running smoothly. Publishing data is actually pretty easy. There are a lot of ways to do that. But securing and organizing your data is an important task that requires some thought.
  • Data correctness verification. Accurate data is the backbone of any database. Rigorous, objective and transparent verification processes are vital to establishing and maintaining high-quality data.
  • Performance improvement in general and reducing data processing time in particular, which, by the way, speak for themselves.

Solution

The solution involved taking the data prepared by the company’s different teams from the cloud storage (S3) and executing the project code to message, consolidate and filter data to perform further calculations. Code execution results are recorded in a file that can be used either for the company’s other projects or for making reports.

The solution includes:

  • orchestration of all jobs (tasks);
  • migration to AWS cloud services;
  • refactoring of the code to handle increased data volume;
  • the possibility of sharing the transformed data with different teams and using it within various company projects.

Key features

Data verification

(data qualitatively and clearly coincides with what is expected)

Each job (task) gives the expected result

Runtime reduction

Maintenance cost reduction

Modifiability improvement

Value

Thanks to the solution implemented by *instinctools, the users got an opportunity to manage the revisions of documents and correlate them with all the necessary regulations in a moreefficient way. It allowed our customer to attract more clients, which increased the business profitability

Technologies

Scala
HDFS
AWS EMR
AWS Lambda
AWS RDS
AWS SQS
Spark
Grafana
S3
Kubernetes
Airflow

Legacy software modernization

is the key to adapt, grow and remain competitive for any organization. In close cooperation with your company, we will work out the best strategy for this process!

Anna Vasilevskaya
AI modified real photo
Anna Vasilevskaya
Account Executive

Get in touch

Drop us a line about your project at
[email protected] or via the contact
form below, and we will contact you soon.