
Graduated in Public Administration, Luiz Flávio Lopes, also known as LF, has always been passionate about technology. Experienced in IT management in public and private institutions, LF is a self-learner and has created a lot of solutions while he led and taught other programmers to execute complex projects. Now, as Jolifox CEO, Luiz Flávio is trying to use all his experience with management development teams to implement a new and better model to offer software outsourcing for other companies around the world.
How did you learn to program without any formal course in the IT field?
I always liked things related to technology and with the administration view I got from the graduation, I saw on software solutions a possibility to make processes and projects viable and more efficient. It makes me find a way to learn some programming languages to implement several projects I have worked on. I had started reading tutorials on the internet and then, creating test solutions to understand how everything works under the hood. The more I learned, the more I saw new possibilities to make processes better. It makes me always search for more and try different languages, tools and frameworks. After some time I started teaching other programmers and it gave me a great opportunity to learn even more and see things from another perspective.
How was your experience leading development teams?
A thing that everyone needs to know about software development is "the hard work comes after the solution is implemented". After creating a couple of solutions, I couldn't focus on new projects because the maintenance and evolution of the current systems have taken a lot of effort. So, I realized, the best way to scale these solutions and implement new process improvements is by creating a team to do that. That's how I started to hire, train and manage other programmers to make great development teams.
Of course, I also have had experiences working as a programmer in other teams locally and remotely, it makes me observe the best practices and ways to manage all the team throughout the entire project phases. I got all these experiences and I try to implement everything that has worked well on teams I manage.
What is your vision about software outsourcing?
I have worked for other software outsourcing companies and I always saw problems related to clients' expectations and the services offered to them. Currently, we have two main ways to provide software outsourcing: software fabric and staff augmentation.
First one:
The Client expects to receive their finished software which meets his requirements. But something we know in the software development field is: software scope is never static. It consistently changes in the middle of the development. But no one tells this to the client because it is easier to build a predefined scope software and it can be more profitable if you offer all the changes as a new service or bill more for that. So in this way, the client pays more and the finished product most of the time does not fit the client's needs.
Second one:
The outsourcing company provides some programmers to be managed by the client itself and accomplish its goals. The first problem in this model, you need to have a person to manage all the developers and this person must know about software development to get a good result with the team, and some clients don't have this kind of person. Another efficiency problem that comes with this model is the whole team doesn't have any direct relation with the client and because of that, they can leave at any time and they don't want to make too much effort to make the software more efficient or better implemented because it is not their responsibility.
So, in summary, most of the time, on the current software outsourcing models, the client gets the software he buys, but it is not the best for your needs.
And how do you plan to solve these problems at Jolifox?
We want to offer another model for the client to get his software built. A flexible and dynamic on-demand team. In our model, a manager will be in charge to take care of the project and the team. And we carefully plan the team members to fit the entire project requirements. The great benefit is during the software development, the team can be changed by adding, replacing or removing members to always keep it more efficient and less costly. Also, the manager and the team will always give insights to the client and any scope changes can be absorbed by the team at any time.
In our model:
The client just has to give the team the directions and features he would like to have and we take care of the rest. In addition, the client just pays only for the time of members he really needs to accomplish the project goals.
The client gets the best possible software that fits his needs, with less friction and lowest cost. And this is what we want to offer to our clients.
Comments