Development Practices Manifesto
Our manifesto is not only a part of Cubix core principles, they are what makes for a team of smart, energetic, and motivated people who know that working here is never just a job. Their passion and willingness translates into great customer relationships and the cutting-edge solutions that we develop.
Trust
We take great care in our recruitment process. This is because we know the true worth of a position at the Cubix table. Our recruitment procedure is crafted in a way that allows it to save job offer for those talented programmers who can showcase exceptional performance. There are several studies out there that have mentioned that an exceptional programmer can be 10 times as productive as compared to a mediocre one.
It is imperative that our development processes are created on the core belief that our programmers are of utmost quality. Furthermore, we have faith in our personnel that they do the best possible things not just for Cubix but also for the project, as well as the client.
Verification
Here are some of the most essential features of verification:
Review by Management: The task of project management needs to be conducted in manners that paves way for routine, simple visibility into their state not only in selecting the best candidates for the job – It also helps in the review of the overall development and the design of the project. For management review, general project documentation is the most viable practice.
Review by Peer: The conduct of regular code and design peer reviews is a must. This will aid in guaranteeing that every task has steadily stayed at the highest level. Furthermore, it will ensure a feasible way to pass on ideas as well as techniques throughout the organization. This review process, not only ensures engagement among individuals, but also creates a sense of growth and learning on each level.
Review by Automation: Every code should be made so that it can be tested. A standard testing structure eases the code creation process, which can verify it is correct. This will let us be upbeat regarding the code’s robust nature. Additionally, we will also be able to upgrade our designs as per the client’s later demands, and we will also avoid regression errors.
QA: It is imperative that a personnel beyond the development team comprehensively exercise the project, and this should be done before the client(s) are permitted to go through the created code. It is advised that this personnel should send the project to the developers if he deems necessary.
Flexibility
We believe that our employees as well as their owned projects have a great deal of sophistication and complexity. Besides some essential practices such as the style of coding, and source management, the methodological “excesses” should be unique according to the client and the project. At the time of a project initiation, it should be decided either it is best to conduct a huge design in advance even before creating code, or to utilize an iterative design approach. This is very important as the wrong match could end up resulting as the project’s failure.
The Right Balance
Our flexibility is directly related with the aim of finding “the right balance” as we believe it is important to successfully complete every single project that offers what it supposed to and even exceed expectations. While choosing practices to use on any given project, every single one should be selected keeping in mind the acceptable strictness level, as this will assist in attaining a successful project. It must be noted that any project that is demanding a lot of efforts in its code and design’s documentation is likely to miss its deadline. Moreover, any project in which documentation is done without much effort can jeopardize the maintenance programmers’ success later on as they would be required to utilize their precious time and energies to reverse engineer the project – only to gain better understanding of it.
We always opt for those appropriate tools and techniques that are the simplest.
“Discipline is the bridge between goals and accomplishment.” – Jim Rohn.
KAIZEN
“Kaizen means ongoing improvement involving everybody, without spending much money.”- Masaaki Imai
We try our best that our software development approach does not stagnate. This is why as part of our work ethics, we count on our entire developer workforce that they keep on looking for methods that allow the betterment of our work and practices – and this in both the smallest to the largest of details.
At Cubix, any fresh idea that is according to our principles will be checked on small-level preliminary projects and thoroughly assessed. In case it is successful, we will happily adopt it throughout the organization.