In 2015, Himu was working for an NGO trying to convince farmers to invest in agricultural machinery in Bangladesh. At a time when machine and deep learning was going mainstream, seeing the incredible technological growth around him, paired with a hint of regret at not majoring in computer science, Himu began to suffer from hardcore FOMO. This interest quickly consumed his nights as he wanted to make up for lost time by taking multiple courses in coding and software development. He was able to put into practice what he had learned when he took up a side project to create an ERP application for the organization he worked in. He really enjoyed working within the intersection of technology and social impact. Working with designers, stakeholders and users, he grew into this role of being the connective tissue. 

 

But, there was one question, one hindrance, that Himu could not come to terms with or overcome. Coding is hard. And no matter how hard he tried to learn, he could not code beyond the introductory courses, which led him to conclude that he was not cut out to be an engineer. The struggle to understand this new language that is a barrier to so many interested in the tech industry led him to ask: why is it necessary to code to build applications? 

 

While creating the ERP application, he was able to use no-code tools. But, he wanted it to have a deeper level of customization - something that he could not do without coding. Enamored by this paradox and captivated by the potential of what tech can bring to the development sector, Himu left his job in 2017 and began a business to pursue his vision of democratizing tech in international development. 

 

Wondering what to call his business, Himu started brainstorming with his partner who had the idea to name it based on his personality and what he imagined the business personality to be like. As someone who was born in Nepal, grew up in Australia and Kenya, studied in the U.S. and worked in Bangladesh, the third-culture kid identity was one that he had experienced and embodied. He also imagined this business to carry this third culture mindset, going where the talent is, adapting to local contexts and prioritizing a continuous learning mindset. From there, 3CK was born. 

 

Beginnings

 

Equipped with the problem solving skills of a civil engineer, his entrepreneurial mindset and the drive for continuous improvement, Himu has brought together a group of software engineers, UX designers, data scientists, graphic designers and animators that all believe in 3CK’s goal to create tech for non-tech people. Though Himu still does not know how to code, he has led the creation of software and design projects for development organizations like SNV, Living Goods, World Fish, CIMMYT, World Bank, Winrock, among others, producing client-focused technology solutions tackling social issues. 

 

This could not have been achieved without 3CK’s international, third culture kid mentality that is inherent in the staff, projects and products that we create. Our team of 105 staff members that work remotely from India, Egypt, Kenya and Georgia, is a group of qualified individuals that have a range of experiences in software platforms. With projects in Kenya, Malaysia, Bangladesh, U.S. and India, our global reach in the development sector is expanding faster and faster. We intend to continue this growth and establish ourselves as a prominent software company creating digital solutions for international development. 

Values

 

1. Democratization and simplification of technology

3CK was founded on the question “why is it necessary to code to build applications?”. Tied closely to that question is the need for explainability around technology. It is very easy to hide behind a cloud of complexity when developing solutions, but in the pursuit of shared understanding, it is essential that technology leaders be able to explain what is under the hood to those who do not understand code. In the pursuit to show that coding experience is not needed to build and use applications, 3CK believes in the democratization and simplification of technology. To do this, we build no-code tools for non-tech people in the international development sector. While these applications are ultimately built using code, once the application is in the hands of the user - employees and stakeholders of NGOs, government counterparts and field operations - they can be updated and used without any experience in coding. This value is the motivation for everything that we do.

2. Creation over maintenance

With the goal of simplifying tech, we naturally hand over maintenance and administration to our users since we are building declarative tools that anyone can use. We prioritize creation over maintenance and we aim to give our clients control over the software we create. By doing this, not only do we make client-focused, user-friendly tools, but our engineers are also happier since they do not have to keep updating repetitive code. 

And how do we do this? We build a modularization layer for frequently done actions into drag and drop or clickable interfaces. This creates a delegated maintenance system that allows the users to become admins. We create dashboard builders, not the dashboard. We create admin portals, not to conduct the administration ourselves. This value enables us to create software with a centralized architecture but decentralized functions and design. We see tech for its potential at enabling innovation and change in the development sector by prioritizing creation rather than the operational bottleneck dependencies that this relationship is currently built on. 

Want to update the back-end logic? You can now do that yourself. Want to create a new dashboard? Design it yourself!

3. User experience over technology

Influencing all of our values and what inspires us to do our work is you - the user. We do not want a world in which technology and software are things that people are scared of or intimidated by. Software should not be a Frankenstein monster built of multiple managed services that ultimately compromises the user experience, especially as user experience and impact are inherently intertwined. We aim to create easy, accessible and holistic user experiences to encourage usage. If no one uses the software, there is no value. 

International development currently has a virtual graveyard filled with applications that were not designed for adoption and retention, but only with short-term, engineering goals in mind. At 3CK, we work our way backwards from the user experience and build tech that prioritizes adoption and retention for optimal use. 

As we work to create software for international development, the users of these programs tend to be some of the world’s most vulnerable populations who may not have comprehensive knowledge of technology. We create applications that the next wave of internet and tech users from emerging markets and rural areas can also comfortably use. From the most advanced coder to the person using an electronic device for the first time, we create software for all users’ experiences by localizing and contextualizing to languages and cultures.

4. Control, flexibility and economies of scale

In a resource-constrained environment like the development sector, coupled with the short-term cycle of their projects, it becomes natural to gravitate towards software-managed services with low subscription costs. The unrealized downside is that since the software is owned by other parties, you lose control and flexibility to customize to your specific needs and to design around the user. Software as a service ultimately compromises the user experience, affecting long term sustainability through poor retention and adoption.Since managed services are generalized, they do not understand the context, location or environments of the users, resulting in low value. This current model, that prioritizes speed and cost through proprietary solutions, is only beneficial in the short-term and does not allow for control and creativity to be in the hands of the users.

At 3CK, we believe that nobody should have to give up quality or control for cost and speed. Stemming from our primary goal of democratizing technology, our products value flexibility and quality to create software that is easy to use, useful and effective. We let clients have full control of the technology stack to create highly customizable solutions that solve unique problems that exist in international development, problems that they are familiar with and specialize in. Having control also means that the software is made to be institutionalized, encouraging the adoption and retention of the product. One of the ways we achieve this is by using and advocating for open source software. By using open source rather than proprietary solutions, we create software that is customizable, supports collaboration and does not reinvent the wheel. 

We also believe that once the clients have control and flexibility, economies of scale will naturally determine the cost and speed. In the triangle of trade offs, speed and costs are byproducts of control. But, speed and cost hardly ever guarantee control. We prioritize control because it encourages adoption and retention of the software while also allowing clients to get value for the service and functionality of the product, rather than time and hours spent in its creation. We prioritize control because that is what is needed in international development to foster innovation.

Operational Philosophy

 

These values also determine our operations. Our product development approach is a seamless process that prioritizes user experience and design to address the root problems of software project failure. There are multiple ways we ensure this. From our hiring practices to our business model, it is all rooted in our values and goal of democratizing technology. 

Our engineers and developers are skilled at creating solutions on multiple platforms and technologies so that our products are not dictated by what we cannot do, but rather are inspired by the needs of the users. We foster a learning over credentials mentality so that we have flexible developers who can collaborate with others to create innovative solutions. During our 6-month onboarding process, our engineers are re-oriented to see their roles as being reactive to the discovery and design process embodied in the UX prototype, replacing the engineering first mindset that many of them are trained in. By hiring experienced yet accommodating engineers, our products focus on design and user experience, resulting in retention and adoption focused, lifetime value software.

The pairing of our talent with the user first and technology agnostic approach culminates in our organizational process for software development. When you work with us, we begin with a 1-3 month problem discovery and solution exploration phase that consists of the engineering lead, UX designer and product manager. Through interviews, empathy maps, and client personas, we determine the most appropriate technology to use in the development phase to craft the user experience the users actually want. We then turn this ideation into a visual prototype with a centralized solutions architecture.

In collaboration with our users, stakeholders and management teams throughout the development process, we test the prototype as part of the research and landscape review to establish a shared understanding of what the solution will be. By creating high fidelity designs, business cases, and outlining an adoption strategy with all parties involved, the development phase allows for consistent clarity in the software development delivery. Once we have a product, we continue implementing improvements, measuring scalability, until adoption and retention is fully achieved.

But, this process is not linear - it is cyclical. Every time a new update or feature is added, the process repeats itself. If adoption and retention rates are low, we go back to the discovery phase and determine what parts of the user experience or the pain points we did not address in the prototype. We have found this reiterative process to be the most cost feasible, low-risk and effective while also allowing us to stand true to our values. By prioritizing user experience and design over engineering, it breeds creativity and establishes flexible relationships between all parties involved, giving us the ability to build software with declarative maintenance tools to democratize technology.

OUR WORK

The ICT4D Challenge

 

When Himu left his job at an NGO to start 3CK, he realized that his frustrations at the way the organization used software was not specific to his organization. It was systemic and what needed to be changed is the relationship between software companies and international development organizations.

 

The nature of short project lifecycles, short-term goals and the need to satisfy multiple donors leads to an immense amount of pressure to show quick results. While working under this pressure, international organizations turn to commercial off the shelf solutions for their technological needs.

 

What we end up with is a mishmash of the newest, fancy sounding, individually built commercial solutions, which are not conducive to social impact. Commercial solutions have a one solution to many customers' approaches and work independently of each other, meaning that their tech stacks are black boxes. International organizations become reliant on these solutions without having any control of the technology. There is also no cohesion nor flexibility in the development of these technologies, which has led to many of the same designs and applications being created across different projects under the same institution - majority of which end up in a virtual graveyard. 

 

The solutions that are created also initially appear cheaper and better in terms of time and money, organizations lose more than just money through hidden costs. They lose control and do not benefit from economies of scale as these solutions are costed per user. They lose user adoption because they cannot control the end user experience. All of this creates a Frankenstein monster of software with multiple decentralized architectures and decentralized designs within one organization, limiting reproducibility, adoption and retention.

 

The emphasis on speed and off the shelf solutions only creates applications that are disassociated from the users and ultimately the goals of the organization. This is wasted effort and money. These problems are also caused by the fact that commercial solutions’ values are so far removed from the realities of social impact and do not align with those of international development, meaning that software companies do not holistically understand the problems that social impact is trying to solve. This leads to generic software that is not built or designed for our industry. 

 

Seeing the value in moving away from commercial off the shelf solutions and having a product, rather than a project mindset, organizations have begun to use custom built software to combat these issues. However, organizations usually do not have the talent to do this in-house or they do not want to invest in an in-house technology team. Their next option is to outsource to a software development company, which brings a whole new set of challenges. A primary reason for the challenges these partnerships face is the procurement process.

 

The current procurement process in NGOs is just like buying large quantities of physical goods. This process is designed to extract value for money: the more you get, the cheaper the cost - like when buying vaccines or food packages or even office furniture and equipment. But what happens when you cannot quantify what you are buying? And the value economics are not clear? And there is no defined "unit"? 

 

Because of the RFP process, communicating ideas of what exactly the international organizations need are convoluted. So too are the solutions that the software companies propose. Writing pages on pages about what the buyer thinks they want in a software solution without even identifying the user problem or value of the product not only makes investing one complex guess, but also results in the wrong product completely with no long term adoption or retention. It is like committing to building a house without an architectural blueprint. 

 

Since software companies prioritize time and engineering over design and value, they will in turn offer a budget quoted on false assumptions and underbid to win the project. The proposals fundamentally become discussions of numbers, promptly removing the perspectives of the most important stakeholders - the users. Once the project begins and vendors quickly realize the magnitude of the scope, the goals move from creating value to saving costs, causing vendors to not do what is necessary to make the product work and the entire software system fails. So, yes, you got the cheapest 6 figure system, but zero value in return. A lose-lose situation. 

 

RFP’s ultimately create more questions than solutions: how can we accurately estimate a system when details are lacking? Who are the users, profiles, personas? Will the data need a GIS visualization layer, dashboards? What is the M&E framework? What platform will the users view this product in? This problem has become so pronounced and frustrating as a software partner that we have stopped bidding on RFPs. With vague instructions on what either party wants and needs, the way that proposals are constructed contributes to the short-term, low-value, dependent nature of software vendor and international development organization’s relationships.

 

This further contributes to a situation where the organization is completely reliant on the software vendor to do basic maintenance. Since there is nobody on the organization’s side to translate their needs and nobody on the software side to effectively explain themselves, the organization becomes stuck in a tech vendor lock-in with no control over the tech stack. And we are right back where we started.

The Vision

 

Rather than having a dependent relationship between software and international development, what would our industry look like if software companies built creation spaces and not maintenance spaces? What would it look like if design thinking was integrated into international development work culture? If organizations had full control of the tech stack? If the solutions prioritized user experience over technology? 

 

At 3CK, we envision a future where international development organizations have the ability to create institutionalized software that empowers beneficiaries and users, software that have users at the heart of the solution. We consider the best solutions to have the user experience at the forefront and technology selection reacting to that experience. We work to create a world where the current barriers in technology do not exist and everybody has the ability to create, maintain and update their own solutions through a delegated maintenance platform. We believe that by shifting the role of tech partners from mainteners to creators, we will be able to promote innovation and product thinking, while also generating value through an emphasis on user experience to improve the long term retention and adoption of our applications. 

 

We advocate for the use of open source tools over proprietary solutions to create flexible software that is controlled by our clients. An emphasis on open source tools will also allow for greater collaboration and data sharing between organizations, ultimately creating software that aims to tackle social problems together. We picture a world with more collaboration and institutionalized tools for international development so that our clients will not have to reinvent the wheel with every new project.

We believe in bridging the gap between technology, international development and beneficiaries by changing the role of software companies to be builders of product foundations, not just projects. Foundations for future innovation, foundations for creativity, and foundations for change. 

The Strategy

 

So, how do we achieve this? 

 

We work with clients who share this vision and make it into a reality by working in smaller batches, prototyping the user experience and designing a flexible partnership. 

 

Beginning projects in smaller batches limits the risks of engaging in highly complex software proposals. Communicating on paper can become lost in the all-in-one, big batch proposal that usually focuses on the larger picture rather than the details. By working with our clients from the beginning in sprints, we dissect what is missing and what is yet to be known in the project. In this problem discovery phase, we collect vital information about the user’s pain points by creating user personas, empathy, journey and story maps to understand information and trust flows. Recording information through these tools are important because it establishes shared understanding among the discovery team, generates empathy between stakeholders who are not necessarily interacting with the users directly, and most importantly, focuses the design of the solution on the users. This process addresses a key question before any investment or RFP is even made: is this problem worth solving? 

 

Once we have accurately identified the problem and the user experience, we will then move into solution exploration by creating a visual prototype that will begin to answer our most important question: will our users find this solution valuable? Our prototypes are visual representations of the end-user experience, created through graphic design and before any code has been developed. In data intensive products, we will create a lightweight data prototype. Our high-fidelity, visual prototypes, rather than the descriptive ones that would be found in a proposal, greatly contributes in creating a shared understanding between all stakeholders and beta-users so that they do not have individual ideas of what the software will look like or how it will function. With this prototype, we are then able to extract the technical architecture and front-end blueprint, which leads to more accurate timelines and cost estimates. These sets of documents effectively become the RFP. 

 

Once the prototype is finalized, we move into technology selection. Here we prioritize open source software over managed services or commercial off the shelf solutions, and conduct research into the underlying reliability and support communities of these projects. We encourage our team to continue supporting the open source projects that we utilize throughout our applications, and we allocate 10% of company time to do this, effectively every Friday afternoon, for our engineers to pursue their own interests. Our clients will then have control and intellectual property of the stack, with 3CK having guest access to develop that IP further. Institutionalized open source software empowers organizations to collaborate with others to work towards a common goal, establishing global trust, transparency and efficiency between and within organizations. 

 

Thanks to working in smaller batches and the visual prototype, we move to engineering where there will be no confusion about what will be built. All of our applications and updates have to be prototyped before engineering, so if any new iteration of the application is needed or a new feature is to be added, we always replicate that in the prototype first. Once we finally begin engineering the product, we ensure that there are admin tools for non-coding users to continue maintaining the software themselves by modularizing repetitive tasks. Our role switches to one of creating new components on the stack.

Who We Serve

 

When we started in 2017, we knew that it was going to be difficult attracting clients. As all new businesses struggle with, gaining a foothold in the industry was going to take time and patience, especially since Himu was changing directions to a completely new career path. With only his introductory-level coding knowledge at bay, he instead started the business by looking at what he already had - his connections and the trust that he had developed in international development. 

While working on the agricultural machinery project that ultimately sparked his interest in the intersections of technology and social impact, Himu met Tim. Working together for two years, they built a strong, respectful relationship, until Himu decided to work towards his passion and start his own business. Tim works for CIMMYT, an international data driven, research-focused organization, part of the CGIAR network, that aims to improve the lives of farmers while ensuring global food security. Tim and Himu’s relationship did not end when he left his job; instead, it only grew stronger as Tim and CIMMYT became 3CK’s first client. 

    

CIMMYT has multiple research projects for multiple crops from around the world, resulting in a vast amount of data. In Bangladesh, they also work closely with the Department of Agriculture Extension (DAE) who has 14,000 extension officers, reaching all parts of the country and millions of farmers. CIMMYT wanted to leverage this extension network with their research to create a decision aiding application. They had a project in mind - a smartapp for farmers so that they could get whatever information they needed directly to them through their phones. 

    

Tim brought in 3CK to help with this project, giving us a platform to launch our work. We started the project as we always do: problem exploration and solution design. In this stage, we aimed to understand the value of the application and asked ourselves a series of questions; who will value and find this useful? What are the organizational strengths and weaknesses? What are the technological constraints? Can it be scaled and sustained?  What are the financial and programmatic costs?

Our Clients

We conducted multiple interviews, trust flow exercises and journey mapping with farmers as well as project managers to understand the users. We immediately realized that the original idea to create a smartapp for farmers would not work because many did not have smartphones. They had simple phones that allowed for communication and many did not spend money on internet bundles. 

This completely changed the direction of the project. More importantly, this saved CIMMYT a lot of money, time and energy because they were ready to push ahead with their initial idea without validating the core assumption that the farmers had smartphones.

We also found that the trust and information dynamics within the farmer’s communities were very communal, meaning that they would listen to the most influential and successful people in the community who were the extension officers, local agricultural retailers and commercial farmers. After speaking with the DAE, we learned that all of the extension officers were given tablets by the organization to share weekly information packets that had the forecast, research-based agricultural advice and other information to help the farmers. But, these packets were written by people who worked in DAE headquarters and wrote these advisories in very high-level data in national level terms. The extension officers had to then translate, analyze and deduce the language, forecasts and technical advisories that were used, which would sometimes lead to misunderstandings and wrong conclusions, giving the farmers wrong advice. Additionally, the frequency of these packets were not fast enough to adapt to changing weather conditions leading to outdated information. All of this led farmers to question the accuracy of the extension officers’ advice and the trust that they had instilled on the extension officers was toying a fine line. Ultimately, what the farmers and extension officers wanted were timely, authentic and localized services that are simple to understand and actionable. 

Lastly, we learned that CIMMYT had a history of creating applications and handing them over to their government counterparts. But, in retrospective follow-ups, it was found that the government partners were not using the applications, effectively ending the adoption of the application at handover. There would be commitments at the senior leadership level, but there would be no buy-in at the usage level. The main reason why the government counterparts would not continue to use the applications was because they were primarily made from proprietary solutions that would need constant updates and had high maintenance costs. Also, CIMMYT’s applications focused on technology rather than user experience leading to low retention and adoption of these tools.

Problem Exploration

Prototype

Solution Design

This time, CIMMYT was determined to do things differently. By putting what we learned together through the extensive UX research, we identified these pain points and proposed a new solution design. Instead of a smartapp for farmers, we proposed to create a smartapp for extension officers and to revamp the DAE’s communications to understandable, localized and contextual advisories. The problem exploration and solution design showed us how to accurately replicate user experience, tackle the pain points, create understanding and apply the visions and needs of everyone involved. The process saved CIMMYT multiple 6 figures from building the wrong app for the wrong audience, combined and leveraged existing partnerships and research, and ultimately created a solution that plays to CIMMYT’s strengths.

Prototype

We then created a visual prototype of this solution with constant communication between CIMMYT and DAE for 6 months. Every week we would meet and get updates by the beta-users who would test the prototype. This way, everybody involved, from CIMMYT scientists, DAE management to users provided feedback, tackled the pain points, and had a shared understanding of the product before it was built. We continued this reiterative feedback cycle until the prototype was in a high fidelity stage and until all parties were satisfied.

 

The solution design that we proposed eliminated long-term maintenance costs by creating a declarative maintenance module within the application that gave control to CIMMYT and governmental counterparts through point and click functions. This was a win-win situation for both parties seeing that CIMMYT would be able to still keep control of the infrastructure and share their research to create change in a practical way, while the DAE did not have to continue paying for maintenance services. Declarative maintenance allows for the sustainable and institutionalized use of the application, creating an easy to use, no-code application that ultimately helps us reach our goal of democratizing tech. The solution prototype was also built on a microservices architecture, giving control, flexibility and speed to CIMMYT who would, after handover, be able to scale the software physically, horizontally and vertically. All of this was done without a single line of code being written. But, the hardest part was about to follow and we did not have any say in it; the procurement stage. 

Tim, who had faith and trust in us, had to now convince CIMMYT headquarters and the senior management to give us the same level of faith and trust to build the solution. Although we had taken up quite a bit of work in the private sector, this was our first software development project in international development and, naturally, HQ had many questions. After constant back and forth between Tim and his colleagues, which tallied up to over 20 pages of writing, Tim refuted all of their questions and concerns about 3CK and successfully convinced everyone to trust us.

Here are some of the highlights: 

Procurement

3CK have adapted their business model to address the root causes of software and communications project failure. By combining a pool of talented resources, user-focused development process and deep client partnerships, 3CK consistently produces high value, cutting edge technological solutions that are evolvable, desirable, viable and feasible. 3CK’s unique approach in prioritizing the user first and developing user-friendly applications are linked to their technical expertise in back-end and front-end design as well as data science capabilities in algorithm training, modelling and inferencing.

Why 3CK?

"3CK have adapted their business model to address the root causes of software and communications project failure. By combining a pool of talented resources, user-focused development process and deep client partnerships, 3CK consistently produces high value, cutting edge technological solutions that are evolvable, desirable, viable and feasible. 3CK’s unique approach in prioritizing the user first and developing user-friendly applications are linked to their technical expertise in back-end and front-end design as well as data science capabilities in algorithm training, modelling and inferencing."

Why 3CK instead of another established company?

"3CK does the job of 6+ companies; graphic design, video animation, web development, mobile development, data science, and UX research. We do not want to go through procurement to hire 6 different companies to solve one problem, this saves us a lot of time in finding and vetting the right talent. We were advised to proceed as a sole source justification as there is not another company capable of merging the proper branding, style, human-centered design/user experience approaches and that has a sufficient relationship with our NARES partners in Bangladesh."

The software development approach is state of the art and is how Google and Facebook do it. Given the complexity of each step, this cannot be done with a small team. I question if 3CK can really do this.

"Respectfully, we disagree that it’s difficult to implement a microservices architecture with a small team. Microservices has been around for many years and 3CK invests heavily in internal R&D and contributions to open source frameworks, combined with their HR process in finding talent to stay relevant with the latest technologies. The 3CK team for this project includes back end developers, front end developers, DevOps engineers, technical project manager, and UX designer. As seen in the CVs, they have sufficient full stack developers who can execute the microservices architecture required to reflect the prototype...We do not agree that the development approach is overly complex or a challenge that is not feasible given 3CK’s knowledge of our project, their stack talent, of the work that has already been completed, and advanced understanding of using human centered design approaches to develop appropriate user interfaces for tools such as this."

Tim, who had faith and trust in us, had to now convince CIMMYT headquarters and the senior management to give us the same level of faith and trust to build the solution. Although we had taken up quite a bit of work in the private sector, this was our first software development project in international development and, naturally, HQ had many questions. After constant back and forth between Tim and his colleagues, which tallied up to over 20 pages of writing, Tim refuted all of their questions and concerns about 3CK and successfully convinced everyone to trust us.

Here are some of the highlights: 

Why 3CK?

"3CK have adapted their business model to address the root causes of software and communications project failure. By combining a pool of talented resources, user-focused development process and deep client partnerships, 3CK consistently produces high value, cutting edge technological solutions that are evolvable, desirable, viable and feasible. 3CK’s unique approach in prioritizing the user first and developing user-friendly applications are linked to their technical expertise in back-end and front-end design as well as data science capabilities in algorithm training, modelling and inferencing."

Why 3CK instead of another established company?

"3CK does the job of 6+ companies; graphic design, video animation, web development, mobile development, data science, and UX research. We do not want to go through procurement to hire 6 different companies to solve one problem, this saves us a lot of time in finding and vetting the right talent. We were advised to proceed as a sole source justification as there is not another company capable of merging the proper branding, style, human-centered design/user experience approaches and that has a sufficient relationship with our NARES partners in Bangladesh."

The software development approach is state of the art and is how Google and Facebook do it. Given the complexity of each step, this cannot be done with a small team. I question if 3CK can really do this.

"Respectfully, we disagree that it’s difficult to implement a microservices architecture with a small team. Microservices has been around for many years and 3CK invests heavily in internal R&D and contributions to open source frameworks, combined with their HR process in finding talent to stay relevant with the latest technologies. The 3CK team for this project includes back end developers, front end developers, DevOps engineers, technical project manager, and UX designer. As seen in the CVs, they have sufficient full stack developers who can execute the microservices architecture required to reflect the prototype...We do not agree that the development approach is overly complex or a challenge that is not feasible given 3CK’s knowledge of our project, their stack talent, of the work that has already been completed, and advanced understanding of using human centered design approaches to develop appropriate user interfaces for tools such as this."

"They continue to be focused on utilizing user experience prototypes to mitigate risk around product development and improve the value provided by the application. We are seeing benefits of the declarative maintenance model they introduced into the admin application which does not require further development to add repetitive functions such as advisory logic, adding new crops and to manage user database. This next phase makes iterative improvements on those functions, but the core capabilities are already there. Without declarative maintenance, in the past we would have to go back to the software vendor to do basic and repetitive maintenance, which was a source of frustration and wasted time, but now non-technical admins from CIMMYT and DAE can do those tasks without knowing how to code."

 And thus began the longstanding relationship between 3CK and CIMMYT that continues to this day. Agvisely, what the application was later named, helps the 14,000 extension officers communicate the latest research, forecasts and agricultural information updates by CIMMYT and DAE at the touch of their finger. We have since been asked to continue on multiple projects with CIMMYT as well as other CGIAR organizations such as World Fish. When creating the next phase of Agvisely, CIMMYT hired 3CK and Tim, stood by us once again and said that:

"They continue to be focused on utilizing user experience prototypes to mitigate risk around product development and improve the value provided by the application. We are seeing benefits of the declarative maintenance model they introduced into the admin application which does not require further development to add repetitive functions such as advisory logic, adding new crops and to manage user database. This next phase makes iterative improvements on those functions, but the core capabilities are already there. Without declarative maintenance, in the past we would have to go back to the software vendor to do basic and repetitive maintenance, which was a source of frustration and wasted time, but now non-technical admins from CIMMYT and DAE can do those tasks without knowing how to code."

Standing true to our values and vision of a future with no-code applications and institutionalized software, our clients have experienced and appreciated the benefits of our goals. We will continue to create applications that serve clients who aim to create meaningful and communal social impact through simple, creative, flexible software solutions until everybody and anybody can maintain these solutions effortlessly.

4 years on, we have helped 7 other international organizations around the world create no-code applications for social impact.