Every client comes to us with a need. Whether that’s a problem to be fixed, an idea to be flushed out, or a foundation that needs built, it is our job to get you there. Though all of our clients come to us with different needs and desires, with our years of industry experience we have established a process built on people-centric work and detailed analysis respecting individual vision, timeline, and budgetary needs.
The first phase, brainstorming, is an informal process where we get more familiar with the client, their needs, their goals, and establish a guide for what working together could look like. The discovery phase is next—a more formal phase, where we thoroughly apply our expertise to establish a feature list, technical plan, roadmap, and an estimate. This often includes workflows, diagrams, architecture maps, and mock-ups to convey an understanding and intention on what is to be built. The last phase, implementation, is where we begin an agile process to develop, deliver, and then iterate upon the client’s desired features.
EcoEngineers: Where the Brainstorming Began
Over the years, the team members at We Write Code have gained valuable experience in many specialized industries. Among these include the environmental services industry, agricultural technology, and the financial technology industry. EcoEngineers, a frontrunner in the field of renewable energy, came to us with a need for improvement that led to a much larger opportunity for growth and success.
Initially our focus with EcoEngineers was centered around migrating their system from a local data center to another hosting provider. By choosing a cloud hosting provider (AWS), EcoEngineers was immediately able to see a reduction in infrastructure cost across their three environments by 40%. Through consolidation of services and following cloud best practices, we squeezed another 50% out of their infrastructure costs. Once the platform was stable and cloud-optimized, the opportunity to explore what their platform could become was possible. With these changes, the realization that changes could be made led to a discussion of what We Write Code could do to make them happen.
Discovering What Could Be
In this initial phase, We Write Code serves as consultants, discovering the administrator and user needs while using industry experience to communicate necessary changes to produce the desired results. With adequate information of the desired product gathered, a proposal outlining our findings and steps to success is provided. At this point in the process no changes have been implemented for the client in terms of a software deliverable—our expertise and time are a complimentary service to ensure our clients we are exactly what they’re looking for.
In the case of EcoEngineers, that entailed a platform that was technologically modernized, supportable, easy to update, had a lower monthly infrastructure cost, and scaled with their business needs. With those goals in mind, our team created low fidelity mockups and hand drawings to convey the ideas of what a new system would be like without having to invest in building screens that may ultimately miss the mark. This provides valuable context to the client—a sense of “realness” to the project, something more than just an idea in the clouds—without the commitment of followthrough. With these designs in hand, it is easy for the client to identify changes, give direction for the final product, and take a sense of ownership of their custom creation.
After reviewing with the client our proposed architectural changes, how these changes would meet their goals, what a new user interface would look like, and how it would operate, we got the green light to migrate their system to a newly built platform.
Transforming EcoEngineers’ Platform
Created in 2010, the EcoEngineers platform had sat without technical updates for years before our work began. The existing platform was not only expensive and difficult to maintain, but also to update to keep up with the ever evolving field of renewable energy.
Our team provided a complete refresh of the technology by migrating the system to cloud hosting (AWS), iteratively replacing different aspects of the system feature-by-feature, then expanding capabilities through new development. We replaced expensive server and software licenses throughout and broke the existing monolithic architecture into containerized microservices to add stateful stability. Finally, a fully automated continuous deployment system was implemented to remove the headache and instability of updating the platform—regardless of how large or small the changes were.
An additional benefit to these changes was additional security without additional effort to EcoEngineers employees. Running on a static server, the previous system required periodic security updates by a support person. With the new platform, the servers are effectively abstracted away. Updates are automatically applied by their cloud provider (AWS) upon every deployment of their application.
In the past any changes or enhancements to their old system were extremely costly. Through building upon and improving the features of the old system, the organization embraced a 93% reduction in infrastructure cost alone. With their new architecture, we can continually provide new, beneficial features that would have never been able to be considered in the past. The features that are being successfully built on the new platform today would have cost ten times as much to attempt to accomplish in the old system; it is now ten times cheaper for EcoEngineers to grow their business and quickly react to opportunity.
By following our tried and true process, EcoEngineers was able to solve the initial problems they approached our team with and now have countless opportunities to adapt and flourish within their industry.
Ready to brainstorm with us? Reach out to get the ball rolling.