Curated by: Sergio A. Martínez
Nearshore development companies are full of creative, innovative minds eager to take on new challenges on a daily basis, expanding their skill set and putting it to good use developing innovations that benefit us all. And although the main objective of these types of companies is mainly collaborating with a variety of clients to bring their ideas to fruition, many organizations like Scio sometimes also develop their own products internally for many reasons.
For example, the company might have a good idea for a product that could solve a demand or offer a solution to a specific problem that no client currently is trying to tackle, or maybe it’s a good idea to have a project that developers of all levels could contribute to, or keep busy while new clients arrive. Sometimes you even have a developer tinkering with an idea that is good enough to develop into a business idea that might benefit all in the long run.
In any case, internal projects give these developers a chance to think outside the box and work on something other than client-facing products, allowing them to stretch their legs and try new technologies and processes in a sandbox environment without risking any customer data or the reputation of their company. These kinds of ventures could also help identify areas of improvement within their existing codebase, discover untapped features or improvements that could benefit their overseas customers, be used to hone developers’ skills, and even refine the collaboration dynamics inside the company. All in all, when it comes to software, having an internal project can be a great asset for a company of any size.
In the case of Scio, this project is Pidamosde.com, a subscription-based, a platform that enables restaurants to implement a digital solution for their sales processes by offering a digital ordering system that takes care of card payments and virtual client queueing, among other things, simplifying the whole ordering process. In other words, PidamosDe helps these businesses expand their client base by having a pretty convenient and hassle-free option to order food through the Internet, which didn’t seem like a realistic option for most of them before it.
However, beyond offering a new solution to a key demographic of the restaurant business that many apps, like UberEats or Rappi, tend to ignore, or be too pricey or inconvenient to use, PidamosDe was also a learning experience for the people at Scio since its launch, with lots of interesting hurdles and learning experiences for everyone involved. For this reason, we spoke with Samuel González Lunar, a developer that has been part of the PidamosDe team for the best part of last year, to obtain a first-hand account of how these internal projects are managed, how they become what they are, and what they offer in return for the people in charge of bringing them to life.
Too many cooks spoil the app
Software development projects can quickly become bogged down with too many cooks in the kitchen. Without clear direction, team members’ efforts can be scattered, leading to wasted time from working on duplicated tasks or conflicting objectives. In addition, larger teams sometimes make it difficult for everyone’s voices to be heard, leading to resentment between members and an overall lack of cohesion. Too much input from multiple parties can also cause decision paralysis within a project, resulting in extended project duration or scope creep that could compromise key deadlines. And certainly, once he joined the project, Samuel had to make sure everything worked properly. In his words…
“Something that can get complicated is keeping a standard on the programming methodology employed on the project, as well as how to test the app. Because beyond developers, many different QA people have been involved over the years, it’s easy to lose track of all the changes made to the codebase over time. We are getting there, though, establishing a new code-review standard to make development easier in the future.”
After all, with too many people working on the same thing, it can be very difficult to have everyone pull in the same direction, and everyone’s time is stretched as they attempt to organize tasks for all the cooks in the kitchen. Software projects are complicated enough even without these issues; having ‘too many cooks spoil the broth’ will almost certainly cause headaches along the way. Samuel is certainly very familiar with cases like this, as he remembered one such challenge that was affecting one of the most important features of a platform like PidamosDe:
“We once had a bug that stopped notifications from reaching the customers. So, as it was, we needed to solve that pretty quickly. The main issue, however, was that the person who wrote the notification code was no longer at Scio, so he wasn’t available to explain what or how he did it. And the necessary documentation wasn’t around either, so I had to research and review the whole program closely to find the error and develop a solution easily and effectively. Once we did that, we had a patch ready to go in less than a day.”
However, these kinds of challenges notwithstanding, internal projects can provide a fun and creative outlet for the team. Not only do they add value to the company, but they also give staff a chance to learn new skills, collaborate on interesting ideas and work together on something that isn’t need-specific. It’s also an opportunity for the company to measure its progress and performance, by giving an in-depth look at how well its processes are working. All of this leads to greater efficiency and productivity, helping the company reach its goals easier than ever before.
Finding the collaboration groove
Developing software requires a tremendous amount of collaboration among different teams and individuals. As a software development company, it’s important to implement the right processes that foster collaboration across the board. Internal projects give a great chance to refine the way team members communicate with each other while also allowing them to become more efficient. Carving out time for an internal project allows your software development company to test out new ideas and approaches without risking the resources or reputation of an external customer’s project — plus your team gets the chance to sharpen their skills too! Internal projects offer a great advantage, providing a safe environment to experiment with new tactics, which can then be incorporated into ongoing projects.
“The Scio way of collaboration is based on mutual support, where everyone can bring you help, and you can respond, which makes collaboration a lot easier and more agile than any other. You teach and learn at the same time, which is incredibly valuable for your professional growth”, explains Samuel. “There have been cases when new people joined the PidamosDe project and used protocols that weren’t part of our standards, overwriting code that resulted in some lost work, but the workshop and courses we give today, and even a conference I did recently, help bring everyone to the same page and avoid issues like this in the future. The point is sharing your experience so everyone joining the team tackles it head on, puts their best effort, and creates something useful and unique for the customers.”
All in all, the main advantage of an internal project like PidamosDe is that it gives the team a chance to learn new technologies without affecting their client workloads. Internally developed projects also allow room for innovation and exploration, as the developers are given ample freedom to express their creativity and experiment with new approaches. Furthermore, these projects can be a great avenue for software development teams to utilize their collaboration skills; by working together on smaller endeavors. Employees can practice and perfect different ways of working that they can carry over into larger or external projects. This way, they will be well-versed in collaborating from collective experience. Plus, internal projects can have time constraints or other unique requirements; by tackling these obstacles together, a team’s communication and coordination capabilities become enhanced and primed for even better efficiency down the line.
Internal projects like PidamosDe can be great for software development companies, as they provide a fun and creative outlet for the team. Not only can these projects add value to the company, but they also give staff a chance to learn new skills, collaborate on interesting ideas and work together on something that isn’t need-specific, often resulting in amazing products that can stand on their own.
Unlike client projects, which only provide the opportunity to work on their specific requirements, internal projects give developers the freedom to explore and uncover untapped potential. With internal projects, developers can dive deep into areas that interest them and explore different approaches to solving problems. Additionally, the internal project also gives rise to great ideas that eventually become products in the market. By tweaking solutions and using processes developed for other projects, the team can come up with advanced solutions very quickly. Ultimately, all these benefits add up, not just in terms of greater profitability but in terms of learning as well. All of this makes taking on internal projects a great advantage for any development team within a software company.
The Key Takeaways
- When it comes to making the most out of the talent of a software company like Scio, having an internal project can be a great idea with plenty of positive outcomes all around.
- Among them, without the pressure of a client’s expectations, a company can review processes, smooth out collaboration, and even launch a product that benefits all in the long run.
- However, these projects need experience and good management to achieve their goals, because a lot of people can work on it at some point, and that could create some issues to work through.
- All in all, an internal project like PidamosDe offers a lot of teaching and learning opportunities that otherwise could be difficult to have with more conventional types of projects.
Scio is an established Nearshore software development company based in Mexico that specializes in providing high-quality, cost-effective technologies for pioneering tech companies. We have been building and mentoring teams of engineers since 2003 and our experience gives us access not only to the knowledge but also the expertise needed when tackling any project. Get started today by contacting us about your project needs – We have teams available to help you achieve your business goals. Get in contact today!