{"id":189199,"date":"2025-11-19T02:57:51","date_gmt":"2025-11-19T07:57:51","guid":{"rendered":"https:\/\/innowise.com\/?post_type=case&#038;p=189199"},"modified":"2026-02-25T08:28:59","modified_gmt":"2026-02-25T13:28:59","slug":"qa-devops-automation","status":"publish","type":"case","link":"https:\/\/innowise.com\/fr\/case\/qa-devops-automation\/","title":{"rendered":"Suite de postes de travail priv\u00e9s : Des tests 105 fois plus rapides, des versions 3 fois plus courtes"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"189199\" class=\"elementor elementor-189199\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a5d40de e-flex e-con-boxed e-con e-parent\" data-id=\"a5d40de\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-b8b99be e-con-full e-flex e-con e-child\" data-id=\"b8b99be\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1cedcd3 elementor-widget elementor-widget-image\" data-id=\"1cedcd3\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"185\" height=\"30\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Log\u043e.svg\" class=\"attachment-full size-full wp-image-189201\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-87e3df3 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"87e3df3\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Private workplace suite: 105x faster testing, 3x shorter releases<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0d4cf26 last-child-mb-0 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"0d4cf26\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Innowise transformed Carbonio\u2019s release process by replacing manual practices with a meticulous automated framework. This enabled faster rollouts, greater stability, and long-term scalability.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d45d513 e-con-full e-grid e-con e-child\" data-id=\"d45d513\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3e26c8e e-con-full e-flex e-con e-child\" data-id=\"3e26c8e\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9e1abee elementor-widget elementor-widget-heading\" data-id=\"9e1abee\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">98%<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-095cb15 last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"095cb15\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>fewer production bugs<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-53b8118 e-con-full e-flex e-con e-child\" data-id=\"53b8118\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57eba21 elementor-widget elementor-widget-heading\" data-id=\"57eba21\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">10x<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-108bd42 last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"108bd42\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>faster deployment for client installations<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2201c4c elementor-mobile-align-justify elementor-widget-mobile__width-inherit btn-min-320 elementor-widget elementor-widget-button\" data-id=\"2201c4c\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#contact-form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Start your solution<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-123eae4 e-con-full e-flex e-con e-child\" data-id=\"123eae4\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-de8bb5d elementor-widget elementor-widget-html\" data-id=\"de8bb5d\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.hero-info-card {\n    display: flex;\n    flex-direction: column;\n    \n    color: #2e2e2e;\n    background-color: #FFFFFF;\n\n\n\n    width: 400px;\n    \n    height: 100%;\n}\n\n.hero-info-card__content {\n    display: flex;\n    flex-direction: column;\n    row-gap: 20px;\n\n    padding: 30px;\n\n    border-width: 0px 1px 1px 1px;\n    border-style: solid;\n    border-color: #999999;\n    \n    flex-grow: 1;\n}\n\n.hero-info-card__content-row {\n    display: grid;\n    grid-template-columns: 102px 1fr;\n\n    column-gap: 40px;\n}\n\n\nimg.hero-info-card__img {\n    display: flex;\n    object-fit: cover;\n    width: 100%;\n    height: auto;\n}\n\n.hero-info-card__param {\n    font-family: Karla;\n    font-weight: 600;\n    font-size: 16px;\n    line-height: 150%;\n\n    text-transform: uppercase;\n}\n\n.hero-info-card__value {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 16px;\n    line-height: 150%;\n}\n\n@media screen and (max-width:1279px) {\n    .hero-info-card {\n        display: grid;\n        grid-template-columns: 390px 1fr;\n\n        place-items: stretch;\n\n        width: 100%;\n    }\n    \n    .hero-info-card__content {\n        padding: 30px 175px 30px 30px;\n\n        border-width: 1px 0px 1px 0px;\n    }\n\n}\n\n\n@media screen and (max-width:840px) {\n    .hero-info-card__content {\n        padding: 30px;\n    }\n}\n\n\n@media screen and (max-width:780px) {\n    .hero-info-card {\n        grid-template-columns: 1fr 1fr;\n    }\n}\n\n\n\n\n@media screen and (max-width:767px) {\n    .hero-info-card {\n        display: flex;\n        flex-direction: column;\n\n        width: 100%;\n    }\n    \n    img.hero-info-card__img {\n        max-height: 300px;\n    }\n\n    \n    .hero-info-card__content {\n        padding: 20px 15px;\n\n        row-gap: 15px;\n\n        border-width: 0px 0px 1px 0px;\n    }\n    \n    .hero-info-card__param {\n        font-size: 14px;\n    }\n\n    .hero-info-card__value {\n        font-size: 14px;\n    }\n}\n<\/style>\n\n<div class=\"hero-info-card\">\n    <img decoding=\"async\" class=\"hero-info-card__img\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/A-monitor-displaying-a-digital-workspace-1.jpg\" alt=\"Private digital workplace suite deployed on a personal computer\" \/>\n    <div class=\"hero-info-card__content\">\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Industry<\/span>\n            <span  class=\"hero-info-card__value\"><a href=\"\/industries\/enterprise\/\">Enterprise software<\/a><\/span>\n        <\/div>\n        \n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Employees<\/span>\n            <span class=\"hero-info-card__value\">130<\/span>\n        <\/div>        \n\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Region<\/span>\n            <span class=\"hero-info-card__value\">Italy<\/span>\n        <\/div>\n\n\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Services<\/span>\n            <span class=\"hero-info-card__value\"><a href=\"\/services\/automation-testing\/\">AQA<\/a>, <a href=\"\/services\/devops\/\">DevOps<\/a>, <a href=\"\/services\/back-end-development\/\">backend development<\/a>, <a href=\"\/services\/software-support\/\">ongoing support<\/a><\/span>\n        <\/div>\n\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Client since<\/span>\n            <span class=\"hero-info-card__value\">2022<\/span>\n        <\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-60191b4 article-description e-flex e-con-boxed e-con e-parent\" data-id=\"60191b4\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-97ca77d author-article e-con-full e-flex e-con e-child\" data-id=\"97ca77d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-538f134 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"538f134\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.section-bg--white, .section-bg--grey {\n    position: relative;\n}\n\n.section-bg--white::before, .section-bg--grey::before {\n    content:\"\";\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left:-100vw;\n    width: 300vw;\n}\n\n.section-bg--white::before {\n    background-color: #ffffff;\n}\n\n.section-bg--grey::before {\n    background-color: #FBFBFD;\n}\n\n\n.summarize_ai_button {\n    min-width:320px !important;\n    align-items: center;\n    justify-content: center;\n}\n\n@media (max-width: 767px) {\n    .summarize_ai_button {\n        width: 100% !important;\n        min-width: initial !important;\n    }\n}\n\n\n\/* hiding generic disclaimer for open cases *\/\n\/*.case-alert-wrapper {\n    display: none !important;\n}*\/\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-13294fa e-con-full section-bg--white e-flex e-con e-child\" data-id=\"13294fa\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-5fa3743 e-con-full e-flex e-con e-child\" data-id=\"5fa3743\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6bb9824 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"6bb9824\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Client overview<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5c4f12d elementor-widget elementor-widget-shortcode\" data-id=\"5c4f12d\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[summarize_button_ai]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6d6014b elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"6d6014b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Zextras develops business software focused on secure communication and data management. Its flagship product, Carbonio, is a self-hosted digital workplace suite that integrates email, calendar, file storage, chat, conferencing, and office tools \u2014 running on desktop and mobile. With its secure, fully private model and modular architecture, Carbonio is trusted by organizations of all sizes that prioritize digital sovereignty without giving up scalability.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9c97c75 e-con-full  section-bg--grey e-flex e-con e-child\" data-id=\"9c97c75\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7241990 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"7241990\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Challenge<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5bb8bb6 elementor-widget elementor-widget-html\" data-id=\"5bb8bb6\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n.challenge-tabs {\r\n    display: flex;\r\n    flex-direction: column;\r\n\r\n    width: 100%;\r\n}\r\n\r\n.challenge-tab-container {\r\n    display: grid;\r\n    grid-template-columns: 1fr 1fr;\r\n\r\n    width: 100%;\r\n\r\n    place-items: stretch;\r\n}\r\n\r\n\r\n.challenge-tab-container button.challenge-tab-btn {\r\n    display: flex;\r\n\r\n    font-family: Sora;\r\n    font-weight: 400;\r\n    font-size: 24px;\r\n    line-height: 135%;\r\n\r\n    text-align: start;\r\n\r\n    cursor: pointer;\r\n\r\n    background-color: transparent;\r\n    color: #717171;\r\n    border: none;\r\n    border-bottom: 1px solid #999999;\r\n\r\n    padding: 0 40px 30px;\r\n    \r\n    border-radius: 0;\r\n    \r\n    \r\n    white-space: normal;\r\n    \r\n    transition: initial;\r\n}\r\n\r\n.challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n    color: #2E2E2E;\r\n    border-bottom: 2px solid #C63031;\r\n\r\n    cursor: default;\r\n\r\n    padding: 0 40px 29px;\r\n}\r\n\r\n.challenge-tab-content {\r\n    display: none;\r\n\r\n    flex-direction: column;\r\n    gap: 18px;\r\n\r\n    padding: 40px 40px 0;\r\n\r\n    font-family: Karla;\r\n    font-weight: 400;\r\n    font-size: 22px;\r\n    line-height: 150%;\r\n}\r\n\r\n.challenge-tab-content.challenge-tab-content--active {\r\n    display: flex;\r\n}\r\n\r\n.challenge-tab-content>* {\r\n    margin: 0;\r\n}\r\n\r\n.challenge-tab-content ul {\r\n    list-style-position: outside;\r\n    \r\n    margin: 0;\r\n    padding: 0;\r\n    \r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 16px;\r\n    \r\n    padding-left: 1.5em;\r\n}\r\n\r\n.challenge-tab-content li {\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n\r\n@media screen and (max-width:780px) {\r\n    .challenge-tab-content {\r\n        padding: 30px 30px 0;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn {\r\n        padding: 0 20px 15px;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n        padding: 0 20px 14px;\r\n    }\r\n}\r\n\r\n@media screen and (max-width:767px) {\r\n    .challenge-tab-content {\r\n        padding: 20px 0 0;\r\n\r\n        font-size: 16px;\r\n    }\r\n    \r\n    .challenge-tab-container button.challenge-tab-btn {\r\n        padding: 0 15px 15px;\r\n\r\n        font-size: 16px;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n        padding: 0 15px 14px;\r\n        color: #2E2E2E;\r\n    }\r\n}\r\n<\/style>\r\n\r\n<div class=\"challenge-tabs\">\r\n    <div class=\"challenge-tab-container\">\r\n        <button class=\"challenge-tab-btn challenge-tab-btn--active\">Business challenges<\/button>\r\n        <button class=\"challenge-tab-btn\">Technical challenges<\/button>\r\n    <\/div>\r\n    <div class=\"challenge-tab-content-container\">\r\n        <div class=\"challenge-tab-content challenge-tab-content--active\">\r\n            <p>With a mature toolset, multiple components, and a growing number of installations, Carbonio continued to expand, along with its partner ecosystem. To sustain this momentum, the team sought to streamline delivery and installation processes \u2014 a strategic move to:<\/p>\r\n            <ul>\r\n                <li><strong>Increase rollout speed.<\/strong> Deliver updates and fixes faster to help Carbonio users access improvements sooner and strengthen a competitive edge.<\/li>\r\n                 <li><strong>Reduce support burden.<\/strong> Improve system stability and responsiveness to minimize downtimes and lower the pressure on support teams.<\/li>\r\n                 <li><strong>Grow partner-led installations.<\/strong> Simplify deployment and configuration to lower technical barriers and empower more partners to roll out Carbonio independently.<\/li>\r\n            <\/ul>            \r\n            \r\n        <\/div>\r\n        <div class=\"challenge-tab-content\">\r\n            \r\n            <p>Behind these business goals lay a partially manual post-development lifecycle, a bottleneck for a scalable, multi-module platform like Carbonio. The team needed to:<\/p>            \r\n            <ul>\r\n                <li><strong>Speed up quality assurance.<\/strong> Regression testing took 35 hours per cycle, stalling release pipelines and diverting developer time, while undetected defects led to costly hotfixes.<\/li>\r\n                 <li><strong>Simplify and accelerate deployment.<\/strong> Every server, module, and integration had to be configured by hand, consuming valuable time and demanding deep technical expertise.<\/li>\r\n                 <li><strong>Streamline development.<\/strong> Inherited architectural components made day-to-day development more demanding, leaving less room for innovation.<\/li>\r\n            <\/ul>\r\n             <p>That\u2019s why they needed a partner experienced in complex process transformation \u2014 one who could collaborate on removing bottlenecks and enabling faster product releases.<\/p>                       \r\n            \r\n            \r\n            \r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n    const tabButtons = [...document.querySelectorAll(\".challenge-tabs .challenge-tab-btn\")];\r\n    const tabContents = [...document.querySelectorAll(\".challenge-tabs .challenge-tab-content\")];\r\n\r\n    const tabButtonActiveClass = \"challenge-tab-btn--active\"\r\n    const tabContentActiveClass = \"challenge-tab-content--active\"\r\n\r\n    const activateItem = (index) => {\r\n        tabButtons.forEach((item, itemIndex) => {\r\n            if (itemIndex === index) {\r\n                item.classList.add(tabButtonActiveClass);\r\n            } else {\r\n                item.classList.remove(tabButtonActiveClass);\r\n            }\r\n        });\r\n        \r\n        tabContents.forEach(\r\n            (itemDesc, itemDescIndex) => {\r\n                if (itemDescIndex === index) {\r\n                    itemDesc.classList.add(tabContentActiveClass);\r\n                } else {\r\n                    itemDesc.classList.remove(tabContentActiveClass);\r\n                }\r\n            }\r\n        );\r\n    }\r\n\r\n    tabButtons.forEach((item, index)=>{\r\n        item.addEventListener(\"click\", () => activateItem(index))\r\n    })\r\n})\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1e71206 e-con-full elementor-hidden-desktop e-flex e-con e-child\" data-id=\"1e71206\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-350020e elementor-widget__width-inherit elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"350020e\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Automate manual processes for faster releases<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2618d01 elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-button\" data-id=\"2618d01\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#contact-form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Get connected<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-513b863 e-con-full section-bg--white e-flex e-con e-child\" data-id=\"513b863\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7e6056c elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"7e6056c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Solution we delivered<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-70f7669 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"70f7669\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>As part of the client\u2019s international team, Innowise quickly joined Zextras\u2019s project, introducing an automation-first approach. We identified the major blockers and eliminated root bottlenecks with structured frameworks that solved causes rather than patching symptoms.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-96170d7 e-con-full e-flex e-con e-child\" data-id=\"96170d7\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-322f7fb elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"322f7fb\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">QA as a continuous service<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f47ee0a e-con-full e-flex e-con e-child\" data-id=\"f47ee0a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c02b300 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"c02b300\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Innowise QA team found that manual QA was crippled by regression-heavy integrations, unpredictable content issues, and inconsistent results across environments. To break through, we re-engineered testing around full automation.<\/span><\/p><p><span style=\"font-weight: 400;\">From there, Zextras gained a <\/span><b>continuous, resilient QA pipeline<\/b><span style=\"font-weight: 400;\"> that validates UI components in every release and catches a majority of bugs before they reach production. With architecture mapped and business-critical flows prioritized, our testing automation approach now drives predictable and stable releases through:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-80ab8d6 elementor-widget elementor-widget-html\" data-id=\"80ab8d6\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\nul.generic-case-ul {\n    list-style: none;\n\n    display: flex;\n    flex-direction: column;\n    gap: 30px;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n\n    margin: 0;\n    padding: 0;\n}\n\nul.generic-case-ul li {\n    position: relative;\n    display: flex;\n\n    align-items: start;\n\n    gap: 20px;\n\n\n    margin: 0;\n}\n\n\nul.generic-case-ul li::before {\n    content: \"\";\n    width: 16px;\n    height: 0;\n    border: 1px solid #C63031;\n\n    position: relative;\n    top: 0.7em;\n\n    flex-shrink: 0;\n}\n\n@media screen and (max-width:1279px) {\n    \n    ul.generic-case-ul {\n        gap: 20px;\n    }\n    \n}\n\n\n@media screen and (max-width:767px) {\n    \n    ul.generic-case-ul {\n        gap: 10px;\n\n        font-size: 16px;\n    }\n\n    ul.generic-case-ul li {\n        gap: 10px;\n    }\n\n    ul.generic-case-ul li::before {\n        width: 12px;\n    }\n    \n}\n<\/style>\n\n<ul class=\"generic-case-ul\">\n        <li><span><strong>Complete case coverage<\/strong> \u2014 all essential user flows are now validated automatically, from basic functions like sending and receiving emails to complex operations in file storage and video conferencing modules.<\/span><\/li>\n        <li><span><strong>Multiple browser support<\/strong> \u2014 tests run on Chrome, Safari, Firefox, and Edge with optimized resource usage. By leveraging the shared Chromium engine in Chrome and Edge, we minimized duplication by running most tests in Chromium.<\/span><\/li>\n        <li><span><strong>Proactive problem detection<\/strong> \u2014 browser driver issues are identified ahead of official browser updates, preventing problems that might arise in later versions. This preemptive approach saves resources and speeds up testing.<\/span><\/li>\n        <li><span><strong>Dynamic environment support <\/strong> \u2014 tests can be executed on any environment simply by specifying the server URL, making it easy to validate modules across different configurations.<\/span><\/li>\n        <li><span><strong>Reliability with edge cases.<\/strong> \u2014 by running tests with varied datasets, we ensured unusual inputs, exceptions, or conditions couldn\u2019t otherwise break the system.<\/span><\/li>\n        <li><span><strong>Accessible reporting.<\/strong> \u2014 for each bug scenario, test reports provide screenshots, videos, request logs, and outputs, enabling PMs, technical and non-technical staff to spot and prioritize issues immediately.<\/span><\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5026262 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"5026262\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Most importantly, QA is now <\/span><b>embedded in development itself<\/b><span style=\"font-weight: 400;\">. With the automation suite integrated into Jenkins CI\/CD pipelines, every build and deployment triggers a full UI check, catching issues early and protecting release velocity.<\/span><\/p><p><span style=\"font-weight: 400;\">For now, our two-engineer QA automation team delivered <\/span><b>900+ automated tests<\/b><span style=\"font-weight: 400;\"> covering critical daily-use scenarios \u2014 from email transactions and calendar scheduling to file storage and chat. To ensure reliability, we set and consistently maintained a KPI of <\/span><b>90%+<\/b><span style=\"font-weight: 400;\"> test stability across all runs.<\/span><\/p><p><span style=\"font-weight: 400;\">And it keeps evolving: we continually refine the framework, removing older custom solutions as the product evolves and adapting locators during React 17\u219218 migration. Also, we expanded coverage with CLI automation, added tests as the product evolves, and improved strengthening for long-term maintainability.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b161c43 elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"b161c43\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework.jpg\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"Automated test reporting framework\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTg5MjA0LCJ1cmwiOiJodHRwczpcL1wvaW5ub3dpc2UuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvQXV0b21hdGVkLXRlc3QtcmVwb3J0aW5nLWZyYW1ld29yay5qcGcifQ%3D%3D\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1000\" height=\"570\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework.jpg\" class=\"attachment-full size-full wp-image-189204\" alt=\"Automated test reporting with overviews, trends, categories, and feature summaries\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework.jpg 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework-300x171.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework-768x438.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Automated-test-reporting-framework-18x10.jpg 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b455bf8 e-con-full e-flex e-con e-child\" data-id=\"b455bf8\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-72f848d elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"72f848d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Deployment & operations excellence<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3f0681f e-con-full e-flex e-con e-child\" data-id=\"3f0681f\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e78c2d5 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"e78c2d5\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Innowise\u2019s DevOps unit helped the client optimize a deployment process by introducing greater automation at scale. Both updates and client installations that once drained time and resources now run faster, safer, and with consistent reliability.<\/span><\/p><p><span style=\"font-weight: 400;\">Here\u2019s what made the difference:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b0fc64d elementor-widget elementor-widget-html\" data-id=\"b0fc64d\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\nul.generic-case-ul {\n    list-style: none;\n\n    display: flex;\n    flex-direction: column;\n    gap: 30px;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n\n    margin: 0;\n    padding: 0;\n}\n\nul.generic-case-ul li {\n    position: relative;\n    display: flex;\n\n    align-items: start;\n\n    gap: 20px;\n\n\n    margin: 0;\n}\n\n\nul.generic-case-ul li::before {\n    content: \"\";\n    width: 16px;\n    height: 0;\n    border: 1px solid #C63031;\n\n    position: relative;\n    top: 0.7em;\n\n    flex-shrink: 0;\n}\n\n@media screen and (max-width:1279px) {\n    \n    ul.generic-case-ul {\n        gap: 20px;\n    }\n    \n}\n\n\n@media screen and (max-width:767px) {\n    \n    ul.generic-case-ul {\n        gap: 10px;\n\n        font-size: 16px;\n    }\n\n    ul.generic-case-ul li {\n        gap: 10px;\n    }\n\n    ul.generic-case-ul li::before {\n        width: 12px;\n    }\n    \n}\n<\/style>\n\n<ul class=\"generic-case-ul\">\n        <li><span><strong>Infrastructure as code (IaC)<\/strong> \u2014 installations and updates are now fully automated with Ansible playbooks. Proxies and database settings are codified, making deployments repeatable, low-risk, and instantly scalable across clients and data centers. New environments can be stood up much faster.<\/span><\/li>\n        <li><span><strong>Continuous monitoring (in progress)<\/strong> \u2014 for internal infrastructures, Prometheus exporters and customized Grafana dashboards track performance, load, antivirus activity, service health, and more. Centralized logs flag anomalies, helping prevent issues before they disrupt users.<\/span><\/li>\n        <li><span><strong>High availability (HA) component<\/strong> \u2014 PostgreSQL can be configured with redundancy and automated failover to safeguard the platform\u2019s core data. This setup ensures database safety, reliable transactions, and resilience for services that depend on it.<\/span><\/li>\n        <li><span><strong>Migration tooling<\/strong> \u2014 in collaboration with the client\u2019s other units, dedicated utilities were developed to support the migration of mail, calendars, contacts, and accounts from third-party platforms. This helped reduce downtime and simplify onboarding, while maintaining data integrity, privacy, and continuity.<\/span><\/li>\n        <li><span><strong>Release management automation<\/strong> \u2014 with CI\/CD, Ansible playbooks are packaged into collections and automatically published to Ansible Galaxy or a private hub. This gives clients one-click installation, faster onboarding, and confidence that every version is tested and ready for use.<\/span><\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-504e4c0 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"504e4c0\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">We support custom installations, tailoring Carbonio to diverse client environments. This means redesigning its architecture in edge cases ranging from single-server setups for lightweight use, to high-volume email infrastructures, to deployments supporting extensive parallel conferencing. By addressing these non-standard scenarios, we help Zextras deliver personalized, reliable, and scalable experiences for every client.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1688bfe elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"1688bfe\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace.jpg\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"Mail and calendar within a private workplace\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTg5MjA5LCJ1cmwiOiJodHRwczpcL1wvaW5ub3dpc2UuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvTWFpbC1hbmQtY2FsZW5kYXItd2l0aGluLWEtcHJpdmF0ZS13b3JrcGxhY2UuanBnIn0%3D\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1000\" height=\"612\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace.jpg\" class=\"attachment-full size-full wp-image-189209\" alt=\"Private digital workplace with mail and calendar windows open\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace.jpg 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace-300x184.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace-768x470.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Mail-and-calendar-within-a-private-workplace-18x12.jpg 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-812c80a e-con-full e-flex e-con e-child\" data-id=\"812c80a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9e0de58 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"9e0de58\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Ongoing support: seamless feature growth & onboarding<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3f0f284 e-con-full e-flex e-con e-child\" data-id=\"3f0f284\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-82e0aa4 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"82e0aa4\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Being embedded in the client\u2019s development team, Innowise contributed <\/span><b>Java expertise<\/b><span style=\"font-weight: 400;\"> that supported broader efforts to make Carbonio\u2019s core more resilient and future-ready. We started with clearing long-standing roadblocks through deep refactoring, clean code practices, and redesigning features on modern language versions \u2014 improvements that helped boost maintainability, performance, and long-term cost efficiency.<\/span><\/p><p><span style=\"font-weight: 400;\">In ongoing development, this joint effort has reinforced Carbonio\u2019s position as a secure and dependable workplace platform. Notable advancements include:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-86f4887 elementor-widget elementor-widget-html\" data-id=\"86f4887\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\nul.generic-case-ul {\n    list-style: none;\n\n    display: flex;\n    flex-direction: column;\n    gap: 30px;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n\n    margin: 0;\n    padding: 0;\n}\n\nul.generic-case-ul li {\n    position: relative;\n    display: flex;\n\n    align-items: start;\n\n    gap: 20px;\n\n\n    margin: 0;\n}\n\n\nul.generic-case-ul li::before {\n    content: \"\";\n    width: 16px;\n    height: 0;\n    border: 1px solid #C63031;\n\n    position: relative;\n    top: 0.7em;\n\n    flex-shrink: 0;\n}\n\n@media screen and (max-width:1279px) {\n    \n    ul.generic-case-ul {\n        gap: 20px;\n    }\n    \n}\n\n\n@media screen and (max-width:767px) {\n    \n    ul.generic-case-ul {\n        gap: 10px;\n\n        font-size: 16px;\n    }\n\n    ul.generic-case-ul li {\n        gap: 10px;\n    }\n\n    ul.generic-case-ul li::before {\n        width: 12px;\n    }\n    \n}\n<\/style>\n\n<ul class=\"generic-case-ul\">\n        <li>Secure, certificate-based emailing with S\/MIME encryption;<\/li>\n        <li>Encrypted traffic with TLS\/SSL certificates and automated renewal tooling;<\/li>\n        <li>Stronger admin controls, including password reset, account rename, and helpdesk rights management;<\/li>\n        <li>Legal hold functionality to support compliance requirements in regulated industries;<\/li>\n        <li>Faster synchronization of emails, calendars, and contacts under extreme loads.<\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-15c2d42 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"15c2d42\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">We continue to play an active role in Carbonio\u2019s evolution, contributing enhancements and bug fixes that help keep the product stable, secure, and aligned with shifting market demands.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-075b5d2 elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"075b5d2\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar.jpg\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"Secure weekly meeting calendar\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTg5MjExLCJ1cmwiOiJodHRwczpcL1wvaW5ub3dpc2UuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMVwvU2VjdXJlLXdlZWtseS1tZWV0aW5nLWNhbGVuZGFyLmpwZyJ9\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"570\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar.jpg\" class=\"attachment-full size-full wp-image-189211\" alt=\"Weekly meeting calendar within a secure business toolset\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar.jpg 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar-300x171.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar-768x438.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/11\/Secure-weekly-meeting-calendar-18x10.jpg 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-82b9486 elementor-widget elementor-widget-html\" data-id=\"82b9486\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.quote-container {\n    display: flex;\n    align-items: start;\n\n    gap: 20px;\n\n    width: 100%;\n\n    padding: 50px 50px 50px 30px;\n\n    color: #2e2e2e;\n\n    border: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round;  \n}\n\n\nimg.quote-icon {\n    display: flex;\n    width: 24px;\n    height: auto;\n\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.quote-content {\n    display: flex;\n    flex-direction: column;\n\n    gap: 40px;\n}\n\np.quote-text {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n.quote-author__container {\n    display: flex;\n    gap: 20px;\n\n    align-items: center;\n}\n\nimg.quote-author__img {\n    display: flex;\n    width: 100px;\n    height: auto;\n\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.quote-author__info {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n\n    flex-basis: 320px;\n    flex-grow: 0;\n}\n\n.quote-author__name {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    margin: 0;\n}\n\n.quote-author__role {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n@media screen and (max-width:767px) {\n    \n    .quote-container {\n        flex-direction: column;\n        gap: 10px;\n\n        padding: 20px;\n    }\n\n    img.quote-icon {\n        width: 16px;\n    }\n\n    .quote-content {\n        gap: 20px;\n    }\n\n    p.quote-text {\n        font-size: 16px;\n    }\n\n    img.quote-author__img {\n        width: 60px;\n    }\n\n    .quote-author__name {\n        font-size: 16px;\n    }\n\n    .quote-author__role {\n        font-size: 14px;\n    }\n}\n<\/style>\n\n<div class=\"quote-container\">\n    <img decoding=\"async\"  class=\"quote-icon\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Frame-2131329670.svg\" alt=\"Quote icon\" \/>\n    <div class=\"quote-content\">\n        <p class=\"quote-text\">\n            The manual burden of such a complex, multi-modular product as Carbonio was weighing down the team and pushing release dates further out. Our goal was to make product testing and installations a hassle-free routine. With QA and deployment automation, Zextras is now confident in product quality, and can actively grow partner-led installations.\n        <\/p>\n        <div class=\"quote-author__container\">\n            <img decoding=\"async\" class=\"quote-author__img\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/05\/Andrew-Artyukhovsky.png\" alt=\"Andrew Artyukhovsky\" \/>\n            <div class=\"quote-author__info\">\n                <span class=\"quote-author__name\"><a href=\"https:\/\/innowise.com\/authors\/andrew-artyukhovsky\/\">Andrew Artyukhovsky<\/a><\/span>\n                <span class=\"quote-author__role\">Lead of Quality Assurance<\/span>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7e9c8cf e-con-full section-bg--grey e-flex e-con e-child\" data-id=\"7e9c8cf\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8982ccb elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"8982ccb\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Technologies used<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9946c7 elementor-widget elementor-widget-html\" data-id=\"c9946c7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.tech-grid {\n    display: grid;\n\n    grid-template-columns: repeat(3, 1fr);\n    column-gap: 60px;\n    row-gap: 80px;\n}\n\n.tech-grid-item {\n    display: grid;\n    flex-direction: column;\n        grid-template-rows: subgrid;\n    grid-row: span 2;\n    gap: 20px;\n}\n\n.tech-grid-item__title-wrapper {\n    display: flex;\n    flex-direction: column;\n\n    padding-bottom: 20px;\n    border-bottom: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round; \n}\n\nh4.tech-grid-item__title {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    margin: 0;\n}\n\np.tech-grid-item__techs {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n@media screen and (max-width:780px) {\n    .tech-grid {\n        grid-template-columns: repeat(2, 1fr);\n        column-gap: 60px;\n        row-gap: 60px;\n    }\n}\n\n\n\n@media screen and (max-width:767px) {\n    .tech-grid {\n        grid-template-columns: 1fr;\n        gap: 30px;\n    }\n\n    .tech-grid-item {\n        gap: 10px;\n    }\n\n    .tech-grid-item__title-wrapper {\n        padding-bottom: 10px;\n    }\n\n    h4.tech-grid-item__title {\n        font-size: 14px;\n        line-height: 120%;\n    }\n\n    p.tech-grid-item__techs {\n        font-size: 14px;\n        line-height: 150%;\n    }\n}\n<\/style>\n\n<div class=\"tech-grid\">\n\n    <div class=\"tech-grid-item\">\n        <div class=\"tech-grid-item__title-wrapper\">\n            <h4 class=\"tech-grid-item__title\">\n                AQA\n            <\/h4>\n        <\/div>\n        <p class=\"tech-grid-item__techs\">Playwright, Fiddler, CI\/CD via Jenkins, GitHub, Allure<\/p>\n    <\/div>\n\n    <div class=\"tech-grid-item\">\n        <div class=\"tech-grid-item__title-wrapper\">\n            <h4 class=\"tech-grid-item__title\">\n                DevOps & system engineering\n            <\/h4>\n        <\/div>\n        <p class=\"tech-grid-item__techs\">Jenkins, GitHub Actions, Ansible, vSphere, Prometheus, Grafana, PostgreSQL, HAProxy, PfSense, ClamAV, kLDAP, Apache Kafka, Ubuntu, Loki, Vector, Zookeeper, Patroni, Docker, Python, Azure<\/p>\n    <\/div>\n\n    <div class=\"tech-grid-item\">\n        <div class=\"tech-grid-item__title-wrapper\">\n            <h4 class=\"tech-grid-item__title\">\n                Backend\n            <\/h4>\n        <\/div>\n        <p class=\"tech-grid-item__techs\">Java 11, Java 17, Java 21, Jetty, Jersey, Guice, LDAP, SOAP, Maven, Linux, Bash, Perl, GitHub, AWS Lambda<\/p>\n    <\/div>\n    \n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-904df3a e-con-full section-bg--white e-flex e-con e-child\" data-id=\"904df3a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2343ecf elementor-widget elementor-widget-html\" data-id=\"2343ecf\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"team-grid\">\n    <div class=\"team-title-wrapper\">\n        <h2 class=\"team-title\">Team<\/h2>\n    <\/div>\n    <div class=\"team-grid-item--placeholder\"><\/div>\n    <div class=\"team-grid-item\">\n        <div class=\"team-grid-item__count\">\n            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\" alt=\"Icon\" \/>\n            <span>2<\/span>\n        <\/div>\n        <span class=\"team-grid-item__type\">AQA Engineers<\/span>\n    <\/div>\n    <div class=\"team-grid-item\">\n        <div class=\"team-grid-item__count\">\n            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\" alt=\"Icon\" \/>\n            <span>1<\/span>\n        <\/div>\n        <span class=\"team-grid-item__type\">Software Engineer<\/span>\n    <\/div>\n    <div class=\"team-grid-item\">\n        <div class=\"team-grid-item__count\">\n            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\" alt=\"Icon\" \/>\n            <span>1<\/span>\n        <\/div>\n        <span class=\"team-grid-item__type\">DevOps Engineer<\/span>\n    <\/div>\n    <div class=\"team-grid-item\">\n        <div class=\"team-grid-item__count\">\n            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\" alt=\"Icon\" \/>\n            <span>1<\/span>\n        <\/div>\n        <span class=\"team-grid-item__type\">Solution Architect<\/span>\n    <\/div>\n<\/div>\n\n        \n<style>\n.team-grid {\n    display: grid;\n\n    width: 100%;\n\n    grid-template-columns: repeat(3, 1fr);\n    gap: 20px;\n\n    place-items: stretch;\n\n    color: #2E2E2E;\n}\n\n.team-title-wrapper, .team-grid-item {\n    display: flex;\n    gap: 5px;\n}\n\n.team-grid-item {\n    padding: 40px 30px;\n}\n\n.team-title-wrapper {\n    padding: 40px 30px;\n    padding-left: 0;\n}\n\n.team-title-wrapper {\n    flex-direction: row;\n    align-items: center;\n}\n\n.team-grid-item {\n    flex-direction: column;\n    align-items: start;\n\n    background-color: #F5F5F7;\n}\n\nh2.team-title {\n    font-family: Sora;\n    font-weight: 400;\n    font-size: 36px;\n    line-height: 46px;\n\n    margin: 0;\n}\n\n.team-grid-item__count {\n    display: flex;\n    align-items: center;\n    gap: 5px;\n}\n\n.team-grid-item__count > span {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 18px;\n    line-height: 130%;\n    text-align: center;\n\n    position: relative;\n    top: 1px;\n\n    color: #C63031;\n}\n\n.team-grid-item__count > img {\n    display: flex;\n\n    width: 20px;\n    height: auto;\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.team-grid-item__type {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n}\n\n@media screen and (max-width:780px) {\n    .team-grid-item {\n        padding: 30px;\n    }\n\n    .team-title-wrapper {\n        padding: 30px;\n        padding-left: 0;\n    }\n}\n\n@media screen and (max-width:767px) {\n\n    h2.team-title {\n        font-size: 24px;\n        line-height: 36px;\n        \n        margin: 0;\n    }\n\n    .team-grid {\n        grid-template-columns: repeat(2, 1fr);\n        gap: 10px;\n    }\n\n    .team-grid-item {\n        padding: 20px;\n    }\n\n    .team-title-wrapper {\n        padding: 0px;\n\n        grid-column: span 2;\n\n        margin-bottom: 20px;\n    }\n\n    .team-grid-item--placeholder {\n        display: none;\n    }\n\n    .team-grid-item__count > img {\n        width: 16px;\n    }\n    .team-grid-item__count > span {\n        font-size: 14px;\n        top: 0;\n    }\n\n    .team-grid-item__type {\n        font-size: 14px;\n    }\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-03f4e16 elementor-widget elementor-widget-image\" data-id=\"03f4e16\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"400\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team.jpg\" class=\"attachment-full size-full wp-image-188146\" alt=\"Innowise team\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team.jpg 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-300x120.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-768x307.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-18x7.jpg 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0ad8ca5 e-con-full section-bg--grey e-flex e-con e-child\" data-id=\"0ad8ca5\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5db0aea elementor-widget elementor-widget-html\" data-id=\"5db0aea\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\nh2.results__title {\n    font-family: Sora;\n    font-weight: 400;\n    font-size: 36px;\n    line-height: 46px;\n\n    margin: 0;\n}\n\n.results__title-wrapper {\n    display: flex;\n    gap: 30px;\n\n    align-items: center;\n    justify-content: space-between;\n\n    width: 100%;\n\n    border-bottom: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round; \n}\n\n.results__duration-wrapper {\n    display: flex;\n    background-color: #F5F5F7;\n}\n\n.results__duration-wrapper > * {\n    padding: 30px 40px;\n}\n\n.results__duration-param {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    text-align: center;\n}\n\n.results__duration-value {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 110%;\n\n    text-align: center;\n}\n\n@media screen and (max-width:767px) {\n    \n    h2.results__title {\n        font-size: 24px;\n        line-height: 36px;\n    }\n\n    .results__title-wrapper {\n        flex-direction: column;\n        align-items: start;\n    }\n\n    .results__duration-wrapper {\n        display: grid;\n        grid-template-columns: 1fr 1fr;\n        width: 100%;\n    }\n\n    .results__duration-wrapper > * {\n        padding: 15px;\n    }\n\n    .results__duration-param {\n        font-size: 16px;\n        line-height: 120%;\n    }\n\n    .results__duration-value {\n        font-size: 16px;\n        line-height: 20px;\n    }\n\n}\n<\/style>\n\n\n<div class=\"results__title-wrapper\">\n    <h2 class=\"results__title\">Results<\/h2>\n    <div class=\"results__duration-wrapper\">\n        <div class=\"results__duration-param\">Project duration<\/div>\n        <div class=\"results__duration-value\">July 2022 \u2013 Present<\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b87d36d e-con-full e-flex e-con e-child\" data-id=\"b87d36d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1a0623b elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"1a0623b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>An automation-first approach reshaped Zextras\u2019s post-development lifecycle, delivering:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c23774c elementor-widget elementor-widget-html\" data-id=\"c23774c\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\nul.generic-case-ul {\n    list-style: none;\n\n    display: flex;\n    flex-direction: column;\n    gap: 30px;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n\n    margin: 0;\n    padding: 0;\n}\n\nul.generic-case-ul li {\n    position: relative;\n    display: flex;\n\n    align-items: start;\n\n    gap: 20px;\n\n\n    margin: 0;\n}\n\n\nul.generic-case-ul li::before {\n    content: \"\";\n    width: 16px;\n    height: 0;\n    border: 1px solid #C63031;\n\n    position: relative;\n    top: 0.7em;\n\n    flex-shrink: 0;\n}\n\n@media screen and (max-width:1279px) {\n    \n    ul.generic-case-ul {\n        gap: 20px;\n    }\n    \n}\n\n\n@media screen and (max-width:767px) {\n    \n    ul.generic-case-ul {\n        gap: 10px;\n\n        font-size: 16px;\n    }\n\n    ul.generic-case-ul li {\n        gap: 10px;\n    }\n\n    ul.generic-case-ul li::before {\n        width: 12px;\n    }\n    \n}\n<\/style>\n\n<ul class=\"generic-case-ul\">\n            <li><span><strong>Testing cycles 105x faster<\/strong> \u2014 cut from 35 hours to 20 minutes.<\/span><\/li>\n            <li><span><strong>98% fewer production bugs<\/strong> \u2014 issues in customer support dropped significantly.<\/span><\/li>\n            <li><span><strong>\u226590% automated test pass rate<\/strong> \u2014 reliability locked in across all runs.<\/span><\/li>\n            <li><span><strong>240+ critical defects intercepted pre-production<\/strong> \u2014 issues that could have caused outages never reached users.<\/span><\/li>\n            <li><span><strong>Collaboration streamlined<\/strong> \u2014 clear, visual reports let PMs, support, and development teams make faster, data-driven decisions.<\/span><\/li>\n            <li><span><strong>Resources optimized<\/strong> \u2014 automation slashed manual testing overhead, redirecting time and budget toward faster feature delivery.<\/span><\/li>\n            <li><span><strong>Deployment accelerated 10x<\/strong> \u2014 client installations and updates became faster and consistently repeatable.<\/span><\/li>\n            <li><span><strong>Release cycles shortened 3x<\/strong> \u2014 new features reached the market quicker.<\/span><\/li>\n            <li><span><strong>Partner rollouts enabled<\/strong> \u2014 automated installation opened the door to partner-led deployments, creating new revenue streams.<\/span><\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-abdd7ce elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"abdd7ce\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">With quicker feature releases and a partner-friendly distribution model, Carbonio solidifies its standing as a competitive, self-hosted alternative to global cloud collaboration providers. The Innowise team continues to support the product by expanding automated testing coverage, fixing bugs, and introducing new features to make it more stable, secure, and user-friendly.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-95dede8 table-content-container e-con-full e-flex e-con e-child\" data-id=\"95dede8\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-32a4a45 e-con-full stickyTable e-flex e-con e-child\" data-id=\"32a4a45\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-c2c808c author-block e-con-full e-flex e-con e-child\" data-id=\"c2c808c\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5b697f5 ddcv elementor-widget elementor-widget-html\" data-id=\"5b697f5\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n\r\n.article-description > .e-con-inner{\r\n     align-items: baseline !important;\r\n}\r\n\r\n.stickyTable {\r\n    position: sticky;\r\n    top: 72px;\r\n    bottom: auto;   \r\n}  \r\n\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener(\"DOMContentLoaded\", ()=>{\r\n        \r\nconst headerElement = document.querySelector(\".new-menu\");\r\n\r\nconst stickyElement = document.querySelector(\".stickyTable\");\r\n\r\nconst headerElementH = headerElement.clientHeight;\r\n\r\nstickyElement.style.top =  headerElementH + 60 + \"px\"\r\n        \r\n});\r\n<\/script>\r\n\r\n\r\n<!--NOTE Change data-id in wrapper styles for hide this block on the mobile device screen-->\r\n<div class=\"toc-wrapper\">\r\n  <h4 class=\"toc-title\">Table of contents<\/h4>\r\n  <div class=\"toc toc-2\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"The demand for retail digital transformation\": \"The demand\"\r\n  \/\/   }\r\n\r\n  \r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"The demand for retail digital transformation\": \"The demand\"\r\n  \/\/   }\r\n\r\n  const LINKS = {\r\n    \"Unleashing the power of .NET 8\": \"gggggg\",\r\n    \"Revamping legacy systems: unlocking business potential through software modernization\":\r\n      \"hello\",\r\n      \"Solution we delivered\": \"Solution\",\r\n  };\r\n\r\n  const OFFSET = 70;\r\n   const PADDING_BOTTOM_FOR_SCROLL = 100;\r\n  let headerList = [];\r\n  let allLinks = [];\r\n  \r\n  let ticking = false;\r\n     \r\n\r\n  const createList = () => {\r\n      \r\n      console.log('create');\r\n      \r\n      \r\n    const tocTarget = document.querySelector(\".toc.toc-2\");\r\n    const toc = document.createElement(\"ul\");\r\n    \r\n    \r\n    \r\n     headerList = [...document.querySelectorAll(\"h2\")];\r\n\r\n\r\n    \r\n    headerList = headerList.slice(0, -3);\r\n    \r\n    headerList.forEach(()=>{\r\n        \r\n    })\r\n    \r\n    const filteredNodes = [document.querySelector(\".related_content_blog_container h2\")]\r\n    \r\n    headerList = headerList.filter((node)=> !filteredNodes.includes(node))\r\n    \r\n    \r\n   headerList.forEach((header,index) => {\r\n      const headerId = header.getAttribute(\"id\");\r\n      const headerText =\r\n        header.dataset.title && header.dataset.title !== \"\"\r\n          ? header.dataset.title\r\n          : header.textContent;\r\n          \r\n\r\n      const headerTocText = header.dataset.title;\r\n\r\n      const idFromText =\r\n        !headerId || headerId === \"\"\r\n          ? headerText\r\n              .toLowerCase()\r\n              .replace(\/[^\\w ]+\/g, \"\")\r\n              .replace(\/ +\/g, \"-\")\r\n          : headerId;\r\n          \r\n         \r\n\r\n      const newListItem = document.createElement(\"li\");\r\n      const newLink = document.createElement(\"a\");\r\n      newLink.setAttribute(\"href\", \"#\" + idFromText);\r\n      newLink.textContent = LINKS[headerText] || headerText;\r\n\r\n      newLink.addEventListener(\"click\", (e) => {\r\n          \r\n        e.preventDefault();\r\n        const y =\r\n          header.getBoundingClientRect().top +\r\n          window.pageYOffset -\r\n          PADDING_BOTTOM_FOR_SCROLL -\r\n          OFFSET;\r\n          ticking = true; \r\n        window.scrollTo({ top: y, behavior: \"smooth\" });\r\n        \r\n        setTimeout(()=>{\r\n            ticking = false;\r\n        },500);\r\n        \r\n      });\r\n      \r\n\r\n      newListItem.appendChild(newLink);\r\n    toc.appendChild(newListItem);\r\n    \r\n    \r\n    });\r\n    tocTarget.appendChild(toc);\r\n    allLinks = Array.from(document.querySelector(\".toc.toc-2\").querySelectorAll(\"ul li\"));\r\n  };\r\n\r\n  const setContainerHeight = () => {\r\n    \/*const windowHeight = window.innerHeight;\r\n    const tocContainer = document.querySelector(\".ddcv\");\r\n\r\n    tocContainer.style.maxHeight = \"calc(100vh - 420px)\";\r\n    tocContainer.style.minHeight = \"200px\";*\/\r\n    \r\n    const tocContainer = document.querySelector(\".author-block\")\r\n    tocContainer.style.maxHeight = \"calc(100vh - 180px)\"\r\n  };\r\n\r\n\r\n  const checkScroll = () => {\r\n      const windowHeight = window.innerHeight;\r\n      const scrollTop = window.scrollY || document.documentElement.scrollTop;\r\n\r\n      let selectedHeaderIndex = -1;\r\n      \r\n      \/\/console.log('headerList', headerList)\r\n      headerList.forEach((header, index) => {\r\n        \r\n  const posTop = header.getBoundingClientRect().top;\r\n       \r\n\r\n const isInViewport = posTop + elem.clientHeight <= window.innerHeight ;\r\n \r\n \r\n\r\n \r\n if(isInViewport){\r\n      selectedHeaderIndex = index;\r\n }\r\n\r\n      });\r\n      \r\n\r\n\r\n        allLinks.forEach((link, i) => {\r\n            if(i === selectedHeaderIndex){\r\n              link.classList.remove(\"pre-active\");  \r\n              link.classList.add(\"active\");\r\n            }\r\n            if(i < selectedHeaderIndex){\r\n              link.classList.add(\"pre-active\"); \r\n               link.classList.remove(\"active\");\r\n            }\r\n             if(i > selectedHeaderIndex){\r\n            link.classList.remove(\"pre-active\");\r\n            link.classList.remove(\"active\");\r\n            }\r\n            \r\n            \r\n            \r\n        });\r\n        \r\n\r\n\r\n  };\r\n\r\n  const loadAllImages = () => {\r\n    const images = document.getElementsByTagName(\"img\");\r\n\r\n    for (let i = 0; i < images.length; i++) {\r\n      const img = images[i];\r\n      const src = img.getAttribute(\"data-src\") || img.src;\r\n      img.src = src;\r\n    }\r\n  };\r\n\r\n  loadAllImages();\r\n  \r\n  \r\n  \r\n\r\n\r\n  document.addEventListener(\"DOMContentLoaded\", () => {\r\n      \r\n      \r\n     setTimeout(()=>{\r\n           createList();\r\n    setContainerHeight();\r\n  \r\n    \r\n    document.addEventListener(\"scroll\", (event) => {\r\n  if (!ticking) {\r\n    checkScroll();\r\n  }\r\n});\r\n    \r\n    \r\n},300) \r\n\r\n    \r\n  });\r\n  \r\n<\/script>\r\n\r\n\r\n<style>\r\n.table-content-container .elementor-widget-wrap {\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n}\r\n\r\n@media (max-width: 1279px) {\r\n    .table-content-container {\r\n   display: none !important;\r\n}\r\n}\r\n\r\n\r\n\r\n.toc-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    row-gap: 30px;\r\n    font-family: \"Karla\";\r\n    box-sizing: border-box;\r\n    \/*height: 100%;*\/\r\n    \r\n    flex: 1;\r\n}\r\n.ddcv {\r\n    \r\n    flex-basis:100%;\r\n    flex-grow: 1;\r\n    flex-shrink: 1;\r\n    overflow-y: auto;\r\n}\r\n\r\n\r\n.toc-wrapper {\r\n    overflow-y: auto;\r\n    flex-shrink: 1;\r\n    flex-basis:100%;\r\n    flex-grow: 1;\r\n}\r\n\r\n.toc-wrapper::-webkit-scrollbar, .ddcv::-webkit-scrollbar {\r\n    position: absolute !important;\r\n    width: 4px !important;\r\n    background-color: #F5F5F7 !important;\r\n}\r\n\r\n.toc-wrapper::-webkit-scrollbar-thumb, .ddcv::-webkit-scrollbar-thumb {\r\n    position: absolute !important;\r\n    background-color: #999999 !important;\r\n    border-radius: 4px !important;\r\n}\r\n\r\n\/*.toc-wrapper .toc {\r\n    scrollbar-width: 4px !important;\r\n    scrollbar-color: auto !important;\r\n}*\/\r\n\r\n\r\nh4.toc-title {\r\n    margin: 0;\r\n    font-family: Karla;\r\n    font-size: 22px;\r\n    line-height: 28px;\r\n    font-weight: 700;\r\n}\r\n\r\n@media screen and (max-width: 1279px) {\r\n    .ddcv {\r\n        margin-top: 0px;\r\n        position: absolute;\r\n        top: 0px;\r\n        left: 50%;\r\n        transform: translate(50%, 0);\r\n    }\r\n}\r\n\r\n@media screen and (max-width: 767px) {\r\n    .ddcv {\r\n        display: none;\r\n    }\r\n}\r\n\r\n.toc ul {\r\n  list-style: none;\r\n  font-family: \"Karla\";\r\n  font-size: 16px;\r\n  line-height: 22px;\r\n  padding: 0px;\r\n  border-left: 1px solid #717171;\r\n}\r\n\r\n.toc li {\r\n  margin-left: -1px;\r\n  margin-top: 0;\r\n  padding: 16px 16px 16px 20px;\r\n  font-size: 18px;\r\n  line-height: 22px;\r\n  color: #717171;\r\n  border-left: 2px solid transparent;\r\n}\r\n\r\n.toc ul li a {\r\n    display: block;\r\n     width: 100%;\r\n    color: inherit;\r\n    text-decoration: none !important;\r\n}\r\n\r\n.toc ul .active {\r\n    color: #2E2E2E;\r\n    border-left: 2px solid #C63031;\r\n}\r\n\r\n.toc ul .pre-active {\r\n    border-left: 2px solid #C63031;\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9277c81 e-con-full e-flex e-con e-child\" data-id=\"9277c81\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b51f48f elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"b51f48f\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Automate manual processes for faster releases<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e8c58f9 elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-align-justify elementor-widget elementor-widget-button\" data-id=\"e8c58f9\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#contact-form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Get connected<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e5559d1 e-flex e-con-boxed e-con e-parent\" data-id=\"e5559d1\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57fee06 elementor-widget elementor-widget-heading\" data-id=\"57fee06\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Related cases<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ff569e9 e-con-full slider-overflow e-flex e-con e-child\" data-id=\"ff569e9\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dfd15ae elementor-widget elementor-widget-shortcode\" data-id=\"dfd15ae\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n        <div class=\"slider-overflow\">\n            <div class=\"swiper-related\">\n                <div class=\"swiper-wrapper\">\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/ai-ergonomics-software-scaling\/\" aria-label=\"block_195080\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/03\/image.png\" alt=\"Scaling AI ergonomics assessment software\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/ai-ergonomics-software-scaling\/\" aria-label=\"Scaling AI ergonomics assessment software\" >Scaling AI ergonomics assessment software<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/qa\/\">QA<\/a><a href=\"\/fr\/cases\/developpement-back-end\/\">Back-end development<\/a><a href=\"\/fr\/cases\/entreprise\/\">Enterprise<\/a><a href=\"\/fr\/cases\/developpement-front-end\/\">Front-end development<\/a><a href=\"\/fr\/cases\/node-js\/\">Node.js<\/a><a href=\"\/fr\/cases\/angular\/\">Angular<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/ai-ergonomics-software-scaling\/\" aria-label=\"Read more about Scaling AI ergonomics assessment software\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/building-a-decentralized-banking-platform\/\" aria-label=\"block_184883\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/07\/Small-Cover-WeFi-blockchain-ecosystem_1Mtransactions-processed-globally.jpg\" alt=\"Building a decentralized banking platform\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/building-a-decentralized-banking-platform\/\" aria-label=\"Building a decentralized banking platform\" >Building a decentralized banking platform<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/blockchain\/\">Blockchain<\/a><a href=\"\/fr\/cases\/fintech\/\">FinTech<\/a><a href=\"\/fr\/cases\/java\/\">Java<\/a><a href=\"\/fr\/cases\/microservices\/\">Microservices<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/building-a-decentralized-banking-platform\/\" aria-label=\"Read more about Building a decentralized banking platform\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/monolithic-to-microservices-migration\/\" aria-label=\"block_179235\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/02\/Small-Cover-Monolithic-to-microservices-migration_-25-faster-response.png\" alt=\"Monolithic to microservices migration\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/monolithic-to-microservices-migration\/\" aria-label=\"Monolithic to microservices migration\" >Monolithic to microservices migration<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/angular\/\">Angular<\/a><a href=\"\/fr\/cases\/sante\/\">Healthcare<\/a><a href=\"\/fr\/cases\/java\/\">Java<\/a><a href=\"\/fr\/cases\/microservices\/\">Microservices<\/a><a href=\"\/fr\/cases\/typescript\/\">TypeScript<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/monolithic-to-microservices-migration\/\" aria-label=\"Read more about Monolithic to microservices migration\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/healthcare-data-management-solutions\/\" aria-label=\"block_171118\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/09\/Precision-medicine-data-management-platform-Small-Cover.png\" alt=\"Precision medicine data management platform\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/healthcare-data-management-solutions\/\" aria-label=\"Precision medicine data management platform\" >Precision medicine data management platform<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/aws\/\">AWS<\/a><a href=\"\/fr\/cases\/analyse-de-donnees\/\">Data analytics<\/a><a href=\"\/fr\/cases\/data-science\/\">Data science<\/a><a href=\"\/fr\/cases\/devops\/\">DevOps<\/a><a href=\"\/fr\/cases\/sante\/\">Healthcare<\/a><a href=\"\/fr\/cases\/python\/\">Python<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/healthcare-data-management-solutions\/\" aria-label=\"Read more about Precision medicine data management platform\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/automated-web-app-testing\/\" aria-label=\"block_170832\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/08\/Web-app-test-automation-teaser.png\" alt=\"Web app test automation\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/automated-web-app-testing\/\" aria-label=\"Web app test automation\" >Web app test automation<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/qa\/\">QA<\/a><a href=\"\/fr\/cases\/java\/\">Java<\/a><a href=\"\/fr\/cases\/rest\/\">REST<\/a><a href=\"\/fr\/cases\/telecom\/\">Telecom<\/a><a href=\"\/fr\/cases\/web\/\">Web<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/automated-web-app-testing\/\" aria-label=\"Read more about Web app test automation\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/thermal-image-analysis-software\/\" aria-label=\"block_170410\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/08\/Thermal-analysis-software-upgrade_-40-faster-data-processing_small-cover-1.png\" alt=\"Thermal analysis software upgrade\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/thermal-image-analysis-software\/\" aria-label=\"Thermal analysis software upgrade\" >Thermal analysis software upgrade<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/conception-3d\/\">3D design<\/a><a href=\"\/fr\/cases\/developpement-back-end\/\">Back-end development<\/a><a href=\"\/fr\/cases\/construction\/\">Construction<\/a><a href=\"\/fr\/cases\/developpement-front-end\/\">Front-end development<\/a><a href=\"\/fr\/cases\/software-enhancement\/\">Software enhancement<\/a><a href=\"\/fr\/cases\/web\/\">Web<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/thermal-image-analysis-software\/\" aria-label=\"Read more about Thermal analysis software upgrade\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/fr\/case\/it-solutions-for-travel-industry\/\" aria-label=\"block_160038\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/05\/Revamping-tour-operator-software-small-cover.png\" alt=\"Developing tour operator software\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/fr\/case\/it-solutions-for-travel-industry\/\" aria-label=\"Developing tour operator software\" >Developing tour operator software<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/fr\/cases\/developpement-back-end\/\">Back-end development<\/a><a href=\"\/fr\/cases\/dart\/\">Dart<\/a><a href=\"\/fr\/cases\/developpement-front-end\/\">Front-end development<\/a><a href=\"\/fr\/cases\/laravel\/\">Laravel<\/a><a href=\"\/fr\/cases\/mobile-development\/\">Mobile development<\/a><a href=\"\/fr\/cases\/php\/\">PHP<\/a><a href=\"\/fr\/cases\/travel\/\">Travel<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/fr\/case\/it-solutions-for-travel-industry\/\" aria-label=\"Read more about Developing tour operator software\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n                <\/div>\n                \n                <div class=\"swiper-related__navigation\">\n                    <button class=\"swiper-related__navigation-btn\">\n                        <svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <g>\n                                <path d=\"M12 4L4 12L12 20\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                                <path d=\"M21 12.0002L4 12.0002\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                            <\/g>\n                        <\/svg>\n                    <\/button>\n                \n                    <button class=\"swiper-related__navigation-btn\">\n                        <svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M13 4L21 12L13 20\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                            <path d=\"M4 12.0002L21 12.0002\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <div class=\"cases-swiper-pagination\"><\/div>\n        \n        <script src=\"\/wp-content\/themes\/hello-elementor\/assets\/js\/slb-case.js\"><\/script>  \n        <link rel=\"stylesheet\" href=\"\/wp-content\/themes\/hello-elementor\/assets\/css\/case-slider.css\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d14f2e e-flex e-con-boxed e-con e-parent\" data-id=\"6d14f2e\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-69cdb98 elementor-widget elementor-widget-shortcode\" data-id=\"69cdb98\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f100240-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"100240\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/fr\/wp-json\/wp\/v2\/case\/189199#wpcf7-f100240-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" enctype=\"multipart\/form-data\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"100240\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f100240-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/fieldset>\n<style>\n#form-templates .contact__info {\n  background-color: #f4f4f4;\n  padding: 70px 44px 70px 50px;\n  position: relative;\n  max-width: 540px;\n  width: 100%;\nborder: 1px solid #AEB1B7;\n}\n\n#form-templates .contact__info-background {\n  z-index: -1;\n  position: absolute;\n  top: 20px;\n  left: 20px;\n  width: 100%;\n  height: 100%;\n  border: 1px dashed #ef4557;\n}\n\n\n#form-templates .new-container{\ndisplay: flex;\njustify-content: space-between;\nflex-wrap: wrap;\n}\n\n\n#form-templates{\npadding: 100px 15px 100px 15px;        \n}\n\n#form-templates .contact__info-heading {\n  font-family: 'Sora' !important;\n  font-style: normal !important;\n  font-weight: 400 !important;\n  font-size: 36px !important;\n  line-height: 46px !important;\n  color: #2E2E2E !important;\n   margin-bottom: 60px !important;\n\n}\n\n\n#form-templates .message label{\ncolor: #585858 !important;   \n}\n\n.elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n font-size: 60px !important;\n  line-height: 70px !important;\n  font-family: \"Sora\", Sans-serif;\n  font-weight: 400;\n  margin: 0;  \n  margin-bottom: 20px;\n}\n\n\n\n\n.elementor-widget-container.form-template p{\n  font-family: \"Karla\", Sans-serif;\n  font-size: 22px;\n  font-weight: 400;\n  line-height: 28px;\n  color: var( --e-global-color-primary );\n  max-width: 700px;\n  margin: 0; \n  margin-bottom: 40px;\n} \n  \n\n\n.new-container #spinner{\nwidth: 50%;\nmax-width: 700px;\n}\n\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:30px; \n    \n}\n\n\n#form-templates .contact__info-heading {\n  margin-bottom: 67px;\n  font-size: 36px;\n  font-family: karla;\n  color:  #2E2E2E;\n\n  line-height: 49px;\n}\n\n#form-templates .contact__info-steps {\n  display: flex;\n  flex-direction: column;\n  max-width: 425x;\n  row-gap: 20px;\n  border-left: 1px solid #2e2e2e;\n}\n\n#form-templates .contact__info-block {\n  position: relative;\n  padding-left: 45px;\n}\n\n#form-templates .contact__info-block:last-child {\n  box-shadow: -1px 0 0 1px #f4f4f4;\n}\n\n#form-templates .contact__info-step {\n  position: absolute;\n  border: 1px solid #2e2e2e;\n  width: 40px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 20px;\n  left: -20px;\n  top: -8px;\n  background-color: #F4F4F4;\n  color:  #2E2E2E;\n\nfont-family: Karla;\nfont-weight: 700;\nfont-size: 18px;\nline-height: 28px;\n\n}\n\n.elementor-widget-global .contact__info-step {\n        color:  #2E2E2E;\n}\n\n#form-templates .contact__info-text {\n  margin: 0;\n  font-size: 16px;\n  line-height: 26px;\n  color: #2E2E2E;\n  font-family: karla;\n\n  width: 100%;\n}\n\n\n#form-templates .contact-us__send{\nflex-shrink: 0;\nmargin-top:0;\n}\n\n\n\n@media screen and (max-width: 1279px) {\n    .new-container #spinner{\n        width: 100%;\n        max-width:100%;\n        margin-bottom:40px;\n    }\n    \n\n    .new-container .contact__info {\n        max-width: 700px !important;\n    }\n    \n}\n\n\n@media screen and (max-width: 1279px) {\n#form-templates{\npadding: 60px 15px 70px 15px;     \n}\n}\n\n\n\n@media screen and (max-width: 767px) {\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:20px; \n \n}\n\n\n  #form-templates .contact__info {\n    padding: 20px 20px 40px 40px;\n    margin: 0 auto;\n  }\n\n\n#form-templates{\npadding: 40px 15px 50px 15px;  \n    \n}\n\n  \n   .new-container #spinner{\n       \n    margin-bottom:30px;   \n   }\n   \n   \n   .elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n   font-size: 32px !important;\n    line-height: 42px !important;    \n   }\n   \n   \n   .elementor-widget-container.form-template p{\n       \n    font-size: 16px;\n    line-height: 20px;  \n    margin-bottom: 30px;\n \n       \n   }\n   \n   #form-templates .contact__info-heading{\n   font-size: 24px !important;\n    line-height: 49px !important;    \n       \n   }\n   \n\n.mailToContact{\nmargin-top: 10px !important;        \n}\n   \n\n  #form-templates .contact__info-heading {\n    font-size: 24px;\n    margin-bottom: 37px;\n  }\n\n  #form-templates .contact__info-background {\n    top: 10px;\n    left: 10px;\n  }\n\n  #form-templates .contact__info-text {\n    font-size: 12px;\n    line-height: 20px;\n  }\n  \n  \n  #form-templates .contact__info-heading {\n   margin-bottom: 35px !important;\n\n}\n\n}\n\n@media (max-width: 767px) {\n    .mailToContact {\n        max-width: 100%;\n    }\n}\n<\/style>\n\n<script>\nwindow.addEventListener('hashchange',function(e){if(window.history.pushState){window.history.pushState('','\/',window.location.pathname)}else{window.location.hash=''}})\n<\/script>\n\n\n<div id=\"form-templates\">\n<div class=\"elementor-widget-container form-template\">\n<a name=\"contact-form\"><\/a>\n<h2>Contact us<\/h2>\n<p><a id=\"calendlylink\" style=\"color: #c63031; border-bottom: 1px solid #c63031; padding: 0;\">Book a call<\/a> or fill out the form below and we\u2019ll get back to you once we\u2019ve processed your request.<\/p>\n<\/div>\n\n<div class=\"new-container\">\n\n\n<div class=\"contact-us__main\" id=\"spinner\" data-no-defer=\"1\">\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"name\">\n<label>Name<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"field_name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__name\" id=\"contact-name\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Name*\" value=\"\" type=\"text\" name=\"field_name\" \/><\/span>\n<\/div>\n\n<div class=\"company\">\n<label>Company<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"company\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__company\" id=\"contact-company\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Company*\" value=\"\" type=\"text\" name=\"company\" \/><\/span>\n<\/div>\n\n<\/div>\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"email\">\n<label>Email<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email contact-us__email\" id=\"contact-email\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Corporate email*\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n<\/div>\n\n<div class=\"phone\">\n<label>Phone<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tel\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel contact-us__phone\" id=\"contact-phone\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Phone*\" value=\"\" type=\"tel\" name=\"tel\" \/><\/span>\n<\/div>\n\n<\/div>\n<div class=\"contact-us__wrapper subj\">\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-recipient\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-subj_js\" aria-invalid=\"false\" name=\"your-recipient\"><option value=\"\">Subject*<\/option><option value=\"IT staff augmentation\">IT staff augmentation<\/option><option value=\"Turnkey product development\">Turnkey product development<\/option><option value=\"Support and enhancement\">Support and enhancement<\/option><option value=\"Careers\">Careers<\/option><option value=\"Other\">Other<\/option><\/select><\/span>\n\n<span class=\"wpcf7-form-control-wrap\" data-name=\"form-field-budget_js\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-budget_js\" aria-invalid=\"false\" name=\"form-field-budget_js\"><option value=\"\">Project budget<\/option><option value=\"Under $15K\">Under $15K<\/option><option value=\"$15K-$30K\">$15K-$30K<\/option><option value=\"$30K-$100K\">$30K-$100K<\/option><option value=\"$100K-$250K\">$100K-$250K<\/option><option value=\"$250K-$500K\">$250K-$500K<\/option><option value=\"More than $500K\">More than $500K<\/option><\/select><\/span>\n\n<\/div>\n\n\n<div class=\"message\">\n<label>Message<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"message\"><textarea cols=\"40\" rows=\"1\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required contact-us__message\" id=\"contact-message\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Describe your needs in detail*\" name=\"message\"><\/textarea><\/span>\n<\/div>\n\n<div class=\"atvoice-wrap\">\n\n<div class=\"voice-wrap\">\n<span id=\"voice-mut\" class=\"voicetext\">Send us a voice message<\/span>\n         <div class=\"qc_voice_audio_wrapper\">\n            <div class=\"qc_voice_audio_container\">\n                <div class=\"qc_voice_audio_upload_main\" id=\"qc_audio_main\">\n                    <a class=\"qc_audio_record_button\" id=\"qc_audio_record\" href=\"#\" aria-label=\"Record an audio message\">\n                        <span class=\"dashicons dashicons-microphone\"><\/span> \u00a0<\/a> \n                <\/div>\n\n                <div class=\"qc_voice_audio_recorder\" id=\"qc_audio_recorder\" style=\"display:none\">\n\n                <\/div>\n                <div class=\"qc_voice_audio_display\" id=\"qc_audio_display\"  style=\"display:none\">\n                    <audio id=\"qc-audio\" controls src=\"\"><\/audio>\n                    <span title=\"Remove and back to main upload screen.\" class=\"qc_audio_remove_button dashicons dashicons-trash\"><\/span>\n                <\/div>\n            <\/div>\n            <input type=\"hidden\" value=\"\" name=\"qcwpvoicemessage\" id=\"qc_audio_url\" \/>\n        <\/div>\n        \n<\/div>\n\n\n<div class=\"attach-wrap\">\n<span class=\"voicetext\">Attach documents<\/span>\n\n<div class='attachment'>\n\n<div class=\"downloaded\">\n<span><\/span>\n<div class=\"deleteFile\"><\/div>\n<\/div>\n\n<div class=\"attachmentButton\" onclick=\"(function cl(e){if(e.target.nodeName == 'DIV'){e.target.parentNode.children[1].children[0].click(); }})(arguments[0]);\">\n\n<div class=\"innerText\">Upload file<\/div>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"att-files\"><input size=\"40\" class=\"wpcf7-form-control wpcf7-file\" accept=\".jpg,.png,.jpeg,.pdf\" aria-invalid=\"false\" type=\"file\" name=\"att-files\" \/><\/span>\n\n<div class=\"tip\" onclick=\"event.stopPropagation()\">\n<p>You can attach 1 file up to 2MB. Valid file formats: pdf, jpg, jpeg, png.<\/p>\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n\n\n\n<\/div>\n\n<div class=\"contact-us__wrapper\"> \n<p class=\"pp\">By clicking Send, you consent to Innowise processing your personal data per our<a href=\"\/privacy-notice\/\"> Privacy Policy <\/a>to provide you with relevant information. By submitting your phone number, you agree that we may contact you via voice calls, SMS, and messaging apps. Calling, message, and data rates may apply.<\/p>\n\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"scoring_point\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmCampaign\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmContent\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmMedium\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmSource\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmTerm\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"location\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"city\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"ip\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"Summ\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"gclid\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"rating\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlCompany\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlWithParams\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"audioMessageLink\" \/>\n<input class=\"wpcf7-form-control wpcf7-submit has-spinner contact-us__send\" id=\"contact-send-button\" type=\"submit\" value=\"Send\" \/>\n<\/div>\n\n<div class='mailToContact'>You can also send us your request <\/br>to <a href=\"mailto:contact@innowise.com\">contact@innowise.com<\/a><\/div>\n\n<\/div>\n\n<div class=\"elementor-widget-container\" style=\"z-index:1;\">\n<div class=\"contact__info\">\n  <div class=\"contact__info-background\"><\/div>\n  <div class=\"contact__info-heading\">What happens next?<\/div>\n  <div class=\"contact__info-steps\">\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">1<\/div>\n      <p class=\"contact__info-text\">Once we\u2019ve received and processed your request, we\u2019ll get back to you to detail your\n        project needs and sign an NDA to ensure confidentiality.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">2<\/div>\n      <p class=\"contact__info-text\">After examining your wants, needs, and expectations, our team will devise a project\n        proposal with the scope of work, team size, time, and cost estimates.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">3<\/div>\n      <p class=\"contact__info-text\">We\u2019ll arrange a meeting with you to discuss the offer and nail down the details.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">4<\/div>\n      <p class=\"contact__info-text\">Finally, we\u2019ll sign a contract and start working on your project right away.<\/p>\n    <\/div>\n  <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\n<\/div>\n\n<\/div><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"other_services_container\">[other_services]<\/div><script>\n            jQuery( document ).ready(function($) {\n                if($('[data-elementor-type=\"wp-post\"]').length > 0){\n                    $('[data-elementor-type=\"wp-post\"]').children().last().before($('.other_services_container'));\n                }else{\n                    $('[data-elementor-type=\"wp-page\"]').children().last().before($('.other_services_container'));\n                }\n                \n                var sections = $('[data-elementor-type=\"wp-post\"]').find('.net-15.dt-16');\n                for(var i = 0; i<sections.length; i++){\n                    \n                    if($(sections[i]).hasClass( 'net-15' ) && $(sections[i]).hasClass( 'dt-16' ) && $(sections[i]).hasClass( 'elementor-hidden-desktop' )==false){\n                        $(sections[i]).before($('.other_services_container'));   \n                    }\n                }\n                \n            });\n        <\/script>","protected":false},"excerpt":{"rendered":"<p>Private workplace suite: 105x faster testing, 3x shorter releases Innowise transformed Carbonio\u2019s release process by replacing manual practices with a meticulous automated framework. This enabled faster rollouts, greater stability, and long-term scalability. 98% fewer production bugs 10x faster deployment for client installations Start your solution Industry Enterprise software Employees 130 Region Italy Services AQA, DevOps, [&hellip;]<\/p>\n","protected":false},"featured_media":189202,"template":"elementor_header_footer","cases":[767,772,783,812,807],"class_list":["post-189199","case","type-case","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/case\/189199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/case"}],"about":[{"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/types\/case"}],"version-history":[{"count":0,"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/case\/189199\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/media\/189202"}],"wp:attachment":[{"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/media?parent=189199"}],"wp:term":[{"taxonomy":"cases","embeddable":true,"href":"https:\/\/innowise.com\/fr\/wp-json\/wp\/v2\/cases?post=189199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}