CINXE.COM
Optimisation of work and communication processes within the organisation - Evermore
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Optimisation of work and communication processes within the organisation - Evermore</title><meta name="keywords" content="The World Jewish Congress, knowledge sharing platform, document repository, platform for discussions, database, international organisation, departments solution, system of applications, custom web application, custom web platform, intranet, extranet, nonprofit, optimise communication flow, NGO, dashboard, microservices architecture, test driven development, product development, application development, Ember, Ruby, Ruby on Rails, Redis, Elixir, PostgreSQL, Heroku"><meta name="description" content="This is a case study of the design and development of a system of web applications we created for The World Jewish Congress."><script async defer="defer" data-domain="weareevermore.com" src="https://plausible.io/js/plausible.js"></script><link href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700&display=swap" rel="stylesheet"><link href='https://d33wubrfki0l68.cloudfront.net/css/fa889535e1392766aa96cd4a11519af8ea88f776/styles/app-bb59abe615.css' rel='stylesheet'/><link rel="apple-touch-icon" sizes="180x180" href="/images/favicon/apple-touch-icon-85ef65b0ad.png"><link rel="icon" type="image/png" sizes="32x32" href="/images/favicon/favicon-32x32-f8e9a5eb4f.png"><link rel="icon" type="image/png" sizes="16x16" href="/images/favicon/favicon-16x16-11f7219231.png"><link rel="manifest" href="/images/favicon/site-a412cd0e71.webmanifest"><link rel="mask-icon" href="/images/favicon/safari-pinned-tab-7c26da3e5f.svg" color="#333333"><link rel="shortcut icon" href="/images/favicon/favicon-f2ba5c358e.ico"><meta name="msapplication-TileColor" content="#333333"><meta name="msapplication-config" content="/images/favicon/browserconfig-fbc9c24e84.xml"><meta name="theme-color" content="#ffffff"><!-- Twitter Card data --><meta name="twitter:card" value="This is a case study of the design and development of a system of web applications we created for The World Jewish Congress."><!-- Open Graph data --><meta property="og:title" content="Optimisation of work and communication processes within the organisation"><meta property="og:type" content="website"><meta property="og:url" content="https://weareevermore.com"><meta property="og:image" content="https://weareevermore.com/images/social-thumbnail-264d1d66d7.jpg"><meta property="og:description" content="This is a case study of the design and development of a system of web applications we created for The World Jewish Congress."><link rel="preconnect" href="https://cdnjs.cloudflare.com"><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="canonical" href="https://weareevermore.com/work/case-study-system-of-custom-web-applications"></head><body class="bg-gray-200 text-gray-700 font-sans-serif leading-normal"><header class="header pb-12 lg:pb-32 bg-gray-200 case-study"><nav class="nav py-8 relative z-max"><div class="container flex items-center justify-between"><a href="/" class="logo"><svg width="135" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><g fill-rule="evenodd" clip-rule="evenodd" fill="#0B2F37"><path d="M46.753 11.275c0-.359-.05-.703-.15-1.03a2.36 2.36 0 00-.473-.867c-.216-.25-.49-.45-.82-.597-.332-.149-.72-.222-1.165-.222-.833 0-1.536.253-2.114.76-.578.508-.897 1.16-.958 1.956h5.68zm2.773 1.265v.375c0 .125-.009.25-.024.374h-8.43c.031.407.136.777.312 1.112.178.336.412.625.705.868.292.242.623.433.993.574.37.14.754.21 1.154.21.693 0 1.278-.128 1.756-.387.476-.257.87-.612 1.177-1.065l1.848 1.499c-1.094 1.5-2.679 2.25-4.758 2.25a6.683 6.683 0 01-2.378-.412A5.57 5.57 0 0140 16.778a5.214 5.214 0 01-1.247-1.837c-.3-.726-.45-1.55-.45-2.472 0-.905.15-1.73.45-2.471.3-.74.712-1.374 1.235-1.897a5.52 5.52 0 011.86-1.217 6.137 6.137 0 012.32-.434c.77 0 1.482.129 2.137.387.653.257 1.219.64 1.697 1.147.477.508.85 1.14 1.119 1.897.27.758.406 1.643.406 2.66zM49.702 6.778h3.025l2.91 8.198h.047l2.932-8.198h2.932l-4.41 11.242h-2.956l-4.48-11.242zM70.144 11.275c0-.359-.05-.703-.15-1.03a2.358 2.358 0 00-.472-.867 2.32 2.32 0 00-.82-.597c-.332-.149-.72-.222-1.167-.222-.832 0-1.536.253-2.113.76-.578.508-.897 1.16-.958 1.956h5.68zm2.772 1.265v.375c0 .125-.008.25-.024.374h-8.428c.03.407.134.777.31 1.112.178.336.412.625.705.868.292.242.623.433.993.574.37.14.755.21 1.156.21.692 0 1.277-.128 1.754-.387.477-.257.87-.612 1.178-1.065l1.848 1.499c-1.095 1.5-2.68 2.25-4.758 2.25a6.684 6.684 0 01-2.379-.412 5.582 5.582 0 01-1.882-1.16 5.23 5.23 0 01-1.247-1.837c-.3-.726-.45-1.55-.45-2.472 0-.905.15-1.73.45-2.471.301-.74.712-1.374 1.235-1.897a5.52 5.52 0 011.86-1.217 6.14 6.14 0 012.322-.434c.768 0 1.48.129 2.135.387.654.257 1.22.64 1.697 1.147.478.508.851 1.14 1.12 1.897.27.758.405 1.643.405 2.66zM75.016 6.778h2.656v1.873h.047a4.09 4.09 0 011.293-1.592c.554-.405 1.2-.609 1.94-.609.108 0 .222.004.346.012.122.008.23.027.323.06v2.575a3.096 3.096 0 00-.855-.116c-.63 0-1.14.116-1.523.35a2.771 2.771 0 00-.902.844 3.063 3.063 0 00-.438 1.006 3.97 3.97 0 00-.116.82v6.019h-2.77V6.778zM96.143 6.45c.723 0 1.342.129 1.86.387a3.68 3.68 0 011.269 1.019c.331.422.572.905.727 1.451.154.548.231 1.11.231 1.687v7.026h-2.771v-6.23c0-.327-.024-.67-.07-1.03a2.823 2.823 0 00-.3-.972 2.022 2.022 0 00-.635-.715c-.269-.188-.627-.281-1.073-.281-.432 0-.8.093-1.11.28-.307.19-.561.43-.76.728-.202.297-.347.629-.44.996a4.474 4.474 0 00-.138 1.088v6.136h-2.771v-6.792c0-.703-.166-1.284-.497-1.746-.332-.459-.851-.69-1.559-.69-.416 0-.778.09-1.085.27-.31.18-.558.41-.75.69-.194.282-.34.606-.44.973-.1.367-.15.738-.15 1.112v6.183H82.91V6.778h2.633v1.804h.046c.122-.282.288-.547.496-.797.208-.25.455-.475.74-.679.283-.203.612-.363.98-.48.37-.117.778-.176 1.225-.176.861 0 1.578.196 2.147.585.57.391 1.008.907 1.316 1.546.37-.686.863-1.214 1.479-1.58.616-.367 1.339-.55 2.17-.55zM105.057 12.353c0 .436.065.874.196 1.312.131.436.327.827.588 1.17.263.344.593.625.994.843.401.22.878.328 1.432.328.554 0 1.031-.108 1.431-.328.4-.218.732-.5.994-.843.261-.343.457-.734.588-1.17.13-.438.196-.876.196-1.312 0-.438-.066-.87-.196-1.3a3.67 3.67 0 00-.588-1.16 2.962 2.962 0 00-.994-.831c-.4-.211-.877-.317-1.431-.317s-1.031.106-1.432.317c-.401.21-.731.487-.994.831a3.67 3.67 0 00-.588 1.16 4.43 4.43 0 00-.196 1.3zm-2.818 0c0-.89.158-1.698.473-2.425a5.666 5.666 0 011.282-1.862 5.643 5.643 0 011.916-1.194 6.582 6.582 0 012.357-.422c.831 0 1.616.14 2.355.422a5.638 5.638 0 011.917 1.194 5.681 5.681 0 011.282 1.862c.315.727.473 1.534.473 2.425 0 .89-.158 1.701-.473 2.435a5.77 5.77 0 01-1.282 1.886 5.869 5.869 0 01-1.917 1.23 6.277 6.277 0 01-2.355.445c-.831 0-1.617-.15-2.357-.446a5.875 5.875 0 01-1.916-1.229 5.755 5.755 0 01-1.282-1.886c-.315-.734-.473-1.545-.473-2.435zM116.363 6.778h2.656v1.873h.046a4.091 4.091 0 011.292-1.592c.556-.405 1.202-.609 1.941-.609.107 0 .222.004.347.012.122.008.23.027.323.06v2.575a3.124 3.124 0 00-.855-.116c-.631 0-1.139.116-1.524.35a2.778 2.778 0 00-.901.844 3.04 3.04 0 00-.439 1.006 3.96 3.96 0 00-.115.82v6.019h-2.771V6.778zM132.015 11.275c0-.359-.049-.703-.15-1.03a2.365 2.365 0 00-.473-.867 2.293 2.293 0 00-.821-.597c-.331-.149-.719-.222-1.165-.222-.832 0-1.536.253-2.113.76-.578.508-.898 1.16-.959 1.956h5.681zm2.772 1.265v.375c0 .125-.008.25-.024.374h-8.429c.031.407.136.777.312 1.112.177.336.412.625.705.868.291.242.623.433.993.574.369.14.754.21 1.154.21.693 0 1.277-.128 1.756-.387a3.297 3.297 0 001.177-1.065l1.847 1.499c-1.093 1.5-2.678 2.25-4.758 2.25a6.679 6.679 0 01-2.377-.412 5.575 5.575 0 01-1.882-1.16 5.2 5.2 0 01-1.247-1.837c-.301-.726-.451-1.55-.451-2.472 0-.905.15-1.73.451-2.471a5.62 5.62 0 011.235-1.897 5.52 5.52 0 011.859-1.217 6.14 6.14 0 012.321-.434c.77 0 1.482.129 2.136.387.654.257 1.22.64 1.698 1.147.477.508.85 1.14 1.119 1.897.27.758.405 1.643.405 2.66zM18.454.384a1.252 1.252 0 00-1.78 0L4.941 12.236l2.044 2.066 10.543-10.65 3.23 3.263-10.54 10.648 2.043 2.065L22.802 8.979l2.852 2.882h4.162L18.454.384zM13.154.41c-.26-.275-.524-.406-.816-.41-.462-.004-.849.295-.965.411L.037 11.861h4.088L14.308 1.576 13.154.41z"/><path d="M11.24 24h1.846l2.075-1.973 9.685-9.784-2.044-2.064-10.541 10.648-3.231-3.264L19.57 6.915 17.527 4.85 6.985 15.5l-2.847-2.876H.112l9.837 9.938L11.24 24zM18.503 24l11.239-11.376h-4.088L15.49 22.892 16.59 24h1.914z"/></g></svg></a><ul class="menu"><li><a class="menu-link" href="/services">Services</a></li><li><a class="menu-link active" href="/work">Work</a></li><li><a class="menu-link" href="/team">Team</a></li><li><a class="menu-link inline-flex items-center" href="https://medium.com/weareevermore" target="_blank" rel="nofollow noreferrer external"><span>Blog</span> <img class="ml-1" src="https://d33wubrfki0l68.cloudfront.net/04370b5058cd772fdb77424a8ad553a0fb83369e/be3cb/images/icons/arrow-new-tab-f0cbde5ccf.svg" alt="Open in new tab arrow"></a></li><li><a href="/#contact" class="header-contact-btn font-bold">Contact</a></li></ul><button type="button" class="mobile-menu-trigger" aria-label="Toggle menu"><span></span> <span></span> <span></span></button></div></nav><div class="detached-navigation"></div><div class="container mt-4 sm:mt-8 md:mt-12 lg:mt-16"><div class="section-mark"></div><h1 class="max-w-xl mt-1 text-gray-700 text-4xl sm:text-6xl md:text-6xl lg:text-8xl font-bold leading-snug">Optimising the organisation's communication flow</h1><p class="opacity-75 text-gray-700 text-base sm:text-lg md:text-xl uppercase leading-normal">System of web applications</p></div></header><div class="bg-white"><section class="container -small py-4 md:py-8 lg:py-12"><div class="case-study-container"><h2>The backstory</h2><p><b>The World Jewish Congress</b> (WJC) is an umbrella organization that caters to the needs of the Jewish communities and organizations in 100 countries around the world. In 2012 we started our collaboration by developing a custom platform, which serves as WJC’s news portal, as well as a hub for the organization’s management in Brussels, Geneva, New York, Buenos Aires and Jerusalem.</p><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/355214fc6307ea26b08b2825009c870c31758b48/0518f/images/case-studies/wjc/wjc-b7d230ac7d.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/355214fc6307ea26b08b2825009c870c31758b48/0518f/images/case-studies/wjc/wjc-b7d230ac7d.png 1x, https://d33wubrfki0l68.cloudfront.net/e079f087bb5ccdff8b49363ccbf690543b5fee9f/4d7c1/images/case-studies/wjc/wjc@2x-41e61400ad.png 2x" alt="WJC - NGO organisation"><h2>About the project</h2><p>In 2015 WJC engaged us to deliver a database management system. WJC aimed at simplifying and improving both the work and communication processes within the organization. With these goals in mind, we created a set of tools to internally share, update and use accumulated knowledge and documents. The newly built applications use one database in different ways, depending on the departments’ needs and requirements.</p><h2>The process</h2><ul class="list"><li>Gather requirements and expectations from stakeholders of each application</li><li>Analyse the database systems WJC was using, both online and offline</li><li>Create possible user workflows and scenarios</li><li>Identify most valuable features and prioritise them</li><li>Plan and test interfaces</li><li>Start the process over</li></ul></div></section><section class="py-8 lg:py-16 bg-blue-darker"><div class="screenshots-wrapper -normal -theme-3"><div class="screenshot -tall img-render"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/18d83902537fc40c69be807f2e4e42e1a12d10ed/7d11f/images/case-studies/wjc/physical-infrastructures-web-app-5ad96c7978.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/18d83902537fc40c69be807f2e4e42e1a12d10ed/7d11f/images/case-studies/wjc/physical-infrastructures-web-app-5ad96c7978.png 1x, https://d33wubrfki0l68.cloudfront.net/5bc01190f189090de67e89f5fccad863a7f826a7/3b920/images/case-studies/wjc/physical-infrastructures-web-app@2x-1228148b8f.png 2x" alt="Custom web application for managing physical infrastructures"></div><div class="screenshot -tall img-render self-end mt-8 sm:-mt-24 md:-mt-32 lg:-mt-48"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/e57f6244c297f0341fc00dc5f1ce928d0759742e/2535d/images/case-studies/wjc/user-management-web-app-c22bc4266e.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/e57f6244c297f0341fc00dc5f1ce928d0759742e/2535d/images/case-studies/wjc/user-management-web-app-c22bc4266e.png 1x, https://d33wubrfki0l68.cloudfront.net/ed2c6c68368c87664477ee03cb19e82424300272/d67bd/images/case-studies/wjc/user-management-web-app@2x-76c2090c47.png 2x" alt="Custom user management web application"></div><div class="screenshot -tall img-render self-center mt-8 sm:-mt-24 md:-mt-32 lg:-mt-48"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/a0fa585a60cf64227b98d28150f11f10ab8d303a/79e41/images/case-studies/wjc/online-collaboration-web-app-4bbc576435.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/a0fa585a60cf64227b98d28150f11f10ab8d303a/79e41/images/case-studies/wjc/online-collaboration-web-app-4bbc576435.png 1x, https://d33wubrfki0l68.cloudfront.net/bb82f918161e4ed118b83833f73aa6f427866562/78c16/images/case-studies/wjc/online-collaboration-web-app@2x-4c2d2c2b21.png 2x" alt="Custom online collaboration web application"></div></div></section><section class="container -small pt-4 md:pt-8 lg:pt-12 pb-12 md:pb-30"><div class="case-study-container"><h2>Technology stack</h2><div class="techs"><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/752a5e025bebe9c5a29e190244f67c7f958186b5/4fb92/images/case-studies/techs/ember-65ffd8f23f.webp 1x, https://d33wubrfki0l68.cloudfront.net/219dd32ef1f703eb92a2a47ab917666c6cea593f/950b0/images/case-studies/techs/ember@2x-3b32f952d7.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/752a5e025bebe9c5a29e190244f67c7f958186b5/3f797/images/case-studies/techs/ember-65ffd8f23f.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/752a5e025bebe9c5a29e190244f67c7f958186b5/3f797/images/case-studies/techs/ember-65ffd8f23f.png 1x, https://d33wubrfki0l68.cloudfront.net/219dd32ef1f703eb92a2a47ab917666c6cea593f/ab902/images/case-studies/techs/ember@2x-3b32f952d7.png 2x" alt="Ember.js"></picture><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/f865989ac3eef7be1d89c5beddfdb3f5e8f747f9/39e04/images/case-studies/techs/ruby-14ea17d6f9.webp 1x, https://d33wubrfki0l68.cloudfront.net/4663835bb29699355caf2d1f0163822dacce93a4/6107c/images/case-studies/techs/ruby@2x-eedbf70afa.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/32c4a1890636cc8ef666624573f61ab5500ec96c/eb0d4/images/case-studies/techs/ruby-72ae4e8c14.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/32c4a1890636cc8ef666624573f61ab5500ec96c/eb0d4/images/case-studies/techs/ruby-72ae4e8c14.png 1x, https://d33wubrfki0l68.cloudfront.net/46595ac4c92c3045d4aa4c7e771bd0f672c84cd2/eee17/images/case-studies/techs/ruby@2x-b3689ab81e.png 2x" alt="Ruby"></picture><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/c4ba1777644e5ae4c587d3c4caf92cec89d7dc76/99e79/images/case-studies/techs/elixir-273e15676e.webp 1x, https://d33wubrfki0l68.cloudfront.net/71c0134c419b97e3099ee245a38b156e7646b767/b7b0d/images/case-studies/techs/elixir@2x-8d59a179ff.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/cf4b79d1785861a415f1c20763c88f08c38f314c/06bba/images/case-studies/techs/elixir-320c8f5477.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/cf4b79d1785861a415f1c20763c88f08c38f314c/06bba/images/case-studies/techs/elixir-320c8f5477.png 1x, https://d33wubrfki0l68.cloudfront.net/75b70e26c0dca994096b9d3706d1a52db1f1a771/4897b/images/case-studies/techs/elixir@2x-be1fcc107f.png 2x" alt="Elixir"></picture><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/bb659706af8c954a496eec730b3678a71eca794c/fc384/images/case-studies/techs/redis-88be40eefb.webp 1x, https://d33wubrfki0l68.cloudfront.net/394f4542ab12876bc30fd92e40b2e436afc2630f/e5de8/images/case-studies/techs/redis@2x-ce36c59ea6.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/18b4bba9d5924357ed784905f042f9798e74bf60/353ff/images/case-studies/techs/redis-ee9ce363a4.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/18b4bba9d5924357ed784905f042f9798e74bf60/353ff/images/case-studies/techs/redis-ee9ce363a4.png 1x, https://d33wubrfki0l68.cloudfront.net/10325eb19d066f69d98b7c81bee795c40e9e53b5/d808d/images/case-studies/techs/redis@2x-cf9ce537b1.png 2x" alt="Redis"></picture><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/8c1faf14c00556fa266c9e02f8411f0cd58cbfe1/bea48/images/case-studies/techs/postgresql-7a16cb8306.webp 1x, https://d33wubrfki0l68.cloudfront.net/c18839b8018b3f98daf17f9a054ba35823337ade/a9a28/images/case-studies/techs/postgresql@2x-bad6cf5ab9.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/214ff9247419b4d843de5e74a9bf301b48b97f69/f1fec/images/case-studies/techs/postgresql-bb84020aeb.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/214ff9247419b4d843de5e74a9bf301b48b97f69/f1fec/images/case-studies/techs/postgresql-bb84020aeb.png 1x, https://d33wubrfki0l68.cloudfront.net/ddfcdc17016fe4a8d132841de1187628158f2456/224f9/images/case-studies/techs/postgresql@2x-aab94c719f.png 2x" alt="PostgreSQL"></picture><picture class=""><source srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/e5403c8d0737dddace7cad5090e17cf3ded7aa70/d5f9a/images/case-studies/techs/heroku-889714bd98.webp 1x, https://d33wubrfki0l68.cloudfront.net/28d588e8391e6e6d1bac2640e5bb7a01a9d0b0a5/20375/images/case-studies/techs/heroku@2x-0147281594.webp 2x" type="image/webp"><img class="lazyload fade-box" src="https://d33wubrfki0l68.cloudfront.net/e5403c8d0737dddace7cad5090e17cf3ded7aa70/47996/images/case-studies/techs/heroku-889714bd98.png" srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcset="https://d33wubrfki0l68.cloudfront.net/e5403c8d0737dddace7cad5090e17cf3ded7aa70/47996/images/case-studies/techs/heroku-889714bd98.png 1x, https://d33wubrfki0l68.cloudfront.net/28d588e8391e6e6d1bac2640e5bb7a01a9d0b0a5/f5134/images/case-studies/techs/heroku@2x-0147281594.png 2x" alt="Heroku"></picture></div><h2 class="md:mt-6">Technology approach</h2><p>For this project, we implemented microservices – single, autonomously developed, small in size and decentralized, new functionalities that allow for automation of deployment and testing. Microservices are easy to scale and integrate with third-party services and do not require long-term commitment to technology stack.</p><p>For these projects we embraced the process of test driven development. This is a software development process that relies on the repetition of a very short development cycle. The requirements are turned into very specific test cases, then the software is improved to pass the new tests only. The concept is to "get something working now and perfect it later." With this method, we were able to produce applications of high quality in less time.</p><p>Most importantly, test driven development is very helpful in long-term projects like this one when we have to add new applications or new functionalities to the ones we already have built. It ensures that all the units have been tested for optimum functionality, both individually and together with one another because tests are run from the very beginning of the development cycle. Thus, the client saves time and money from debugging at later stages of the project.</p><h2>Challenges</h2><p>WJC is a huge organization, with various departments and a lot of end users. All of them had different goals, needs and views how the system should work. We had to filter their requests carefully not to get derailed.</p><p>The most challenging part of the project was not the scale, but rather the logic behind the applications. We developed a family of applications that are alike, but serve different needs. The applications are compatible, communicate with each other and make use of shared instruments.</p><h2>Team setup</h2><ul class="list"><li>3 Developers</li><li>UI Designer</li><li>Product Manager</li></ul><hr class="my-12 border-t border-gray-700"><a class="text-blue-600 font-bold uppercase" href="/work/case-study-live-streaming-platform">Up Next</a><h2 class="upnext mt-4 sm:pr-16 md:pr-32 lg:pr-12 text-xl sm:text-2xl md:text-3xl lg:text-4xxl font-bold"><a href="/work/case-study-live-streaming-platform" class="inline-block text-gray-700 hover:underline leading-normal">Improving user experience at EU events</a></h2></div></section></div><section class="py-16 lg:pt-28 lg:pb-24 bg-gray-700"><div class="container text-center"><div class="section-mark mx-auto mb-6"></div><h2 class="mb-8 sm:mb-6 text-white text-2xl md:text-4xl lg:text-5xl font-bold uppercase md:leading-tight">Do you have a project in mind?</h2><a href="/#contact" class="btn btn-white px-12">Let’s talk</a></div></section><footer class="py-8 md:py-12 lg:py-24 bg-gray-800"><div class="container text-white text-center"><div class="sm:flex sm:items-center sm:justify-center relative mb-8 lg:mb-20"><a href="/one-percent-for-the-planet" class="sm:absolute sm:left-0 sm:mb-0 flex justify-center mb-6"><img src="https://d33wubrfki0l68.cloudfront.net/ab649917337a7dd23721e4ed610b668652e6bf79/5dfb6/images/icons/one-for-the-planet-logo-ee4eafb423.svg" alt="1% for the Planet"></a><div class="flex justify-center"><a href="https://www.linkedin.com/company/weareevermore/" class="social-link" rel="nofollow noreferrer" target="_blank"><img src="https://d33wubrfki0l68.cloudfront.net/0408e20e8ac0d3627ab4f1adb95142e8bcfd5624/f70c5/images/icons/linkedin-b4f1eaabaa.svg" alt="Linkedin"> </a><a href="https://medium.com/weareevermore" class="social-link" rel="nofollow noreferrer" target="_blank"><img src="https://d33wubrfki0l68.cloudfront.net/aabc7099f3a72fc1100b90933aee688f6ab052d8/5a18f/images/icons/medium-c4853b4696.svg" alt="Medium"> </a><a href="https://twitter.com/weareevermore" class="social-link" rel="nofollow noreferrer" target="_blank"><img src="https://d33wubrfki0l68.cloudfront.net/5afa2b50e3353735e950c6c001d5d267aec2af00/26906/images/icons/twitter-e2b71e454c.svg" alt="Twitter"> </a><a href="https://instagram.com/weareevermore/" class="social-link" rel="nofollow noreferrer" target="_blank"><img src="https://d33wubrfki0l68.cloudfront.net/51b69c3ccb9dae336bdd188ed4470d94d9867cbb/9bb22/images/icons/instagram-bb2de87c37.svg" alt="Instagram"> </a><a href="https://www.facebook.com/WEAREEVERMORE" class="social-link" rel="nofollow noreferrer" target="_blank"><img src="https://d33wubrfki0l68.cloudfront.net/808a797821eae12f1b3be7d484763ea6926d375e/94f10/images/icons/facebook-3280db08de.svg" alt="Facebook"></a></div></div><div class="flex flex-wrap"><a class="mr-16 opacity-50 text-sm text-white hover:underline" href="/terms">Terms of Use</a> <a class="opacity-50 text-sm text-white hover:underline" href="/privacy-policy">Privacy Policy</a> <span class="w-full lg:w-auto mt-4 lg:mt-0 lg:ml-auto pr-20 sm:pr-0 opacity-50 text-sm text-white text-left">Evermore Ltd., 4 Iskar Street, 1000 Sofia, Bulgaria, VAT: BG175194851</span></div></div></footer><section class="cookies-consent" id="cookies-consent"><div class="container md:flex items-center text-center"><div class="mb-4 md:mb-0 text-left"><b class="font-bold">This website stores cookies on your computer.</b> These cookies are used to collect information about how you interact with our website and allow us to remember you. We use this information for analytics purposes both on this website and other media. To find out more about the cookies we use, see our <a class="text-blue-600 hover:underline" href="/privacy-policy">Privacy Policy</a>.</div><button type="button" class="btn-accept-cookies btn btn-dark md:ml-15" id="accept-cookies">Accept</button></div></section><script defer='defer' src='https://d33wubrfki0l68.cloudfront.net/bundles/80c84b950fe2cad27c2309a4e4a7e7516a89ae80.js'></script><script>"use strict"; function LoadDriftWidget() { !function() { var t = window.driftt = window.drift = window.driftt || []; if (!t.init) { if (t.invoked) return void (window.console && console.error && console.error("Drift snippet included twice.")); t.invoked = !0, t.methods = [ "identify", "config", "track", "reset", "debug", "show", "ping", "page", "hide", "off", "on" ], t.factory = function(e) { return function() { var n = Array.prototype.slice.call(arguments); return n.unshift(e), t.push(n), t; }; }, t.methods.forEach(function(e) { t[e] = t.factory(e); }), t.load = function(t) { var e = 3e5, n = Math.ceil(new Date() / e) * e, o = document.createElement("script"); o.type = "text/javascript", o.async = !0, o.crossorigin = "anonymous", o.src = "https://js.driftt.com/include/" + n + "/" + t + ".js"; var i = document.getElementsByTagName("script")[0]; i.parentNode.insertBefore(o, i); }; } }(); drift.SNIPPET_VERSION = '0.3.1'; drift.load('3bufwz2yirgw'); } // We don't use the DriftWidget functionality right now.In case we want to use it uncomment the code block. // setTimeout(function(){ // LoadDriftWidget(); // }, 3000);</script><script async src="https://www.googletagmanager.com/gtag/js?id=UA-66278473-1"></script><script>window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-66278473-1');</script></body></html>