How would you architect a canonizer to be massively scalable?
We will use container with the application and deploy the application in Kubernetes cluster with Zero down time where we can scale massively.
What type of team management or prioritization tools are normally used, if any?
We use Clickup for ticket prioritization and sprint management. As for communication we primarily use google chat as it offers us quick and transparent lines of communication.
We recommend using a cloud service repo but are flexible when it comes to the service. We have experience with BitBucket and GitHub.
What is your philosophy on code reviews by team members, or strategies such as team or pair coding?
We have found great success utilizing this two step method. We begin by conducting Peer Review on the work completed for a ticket. This is closely followed by a code review by a team lead.
We advise staying away from team or pair coding when it can be avoided. While our developers have the skillsets to collaborate. Team coding is not as sustainable in completing a task as one dedicated developer. The increase in effort also leads to an increase in the margin for error. It also adds an unnecessary layer of complexity to our proven peer review process.
What experience do you have setting up and maintaining systems that are 100% continuous delivery enabled, including automated tests that prove 100% of functionality still works with each modification made to the code, along with automatic deployment of such fully tested changes
We have deployment tools such as jenkins and we use gitlab CI/CD where we test our applications continuously and to deploy to server. We have set of jobs where we scan and test the entire code, if the test pass then will automatically deploy it to production.
Provide any other ideas of how you could contribute or help improve Canonizer and it’s goals.
We pride ourselves in the ability to provide excellent coding standards matched by our ability to collaborate and communicate effectively. Our approach to agile software development will assist Canonizer in developing an efficient development cycle with continuous deliverables. We would also aim to supplement this cycle with the UX/UI that is scalable and fosters more user engagement.
Do you have any examples of times when you went beyond what was being asked of you by your immediate supervisor to further the goals of the company or humanity as a whole?
We started our relationship with a company that was servicing athletes in low to mid tier US sports organizations. The companies primary focus was on building a platform that could one day reach a wider range of athletes. Our team worked hard to ensure that the software was scalable but took it a step further by going out of our way to collaborate with the product owners to understand their vision for the platform as a whole and its potential. Furthermore, the team put in extra hours wherever necessary to ensure that our objectives were being met. These sacrifices, in conjunction with the direction that the client provided allowed us to assist them in reaching their companies goals. 5 years later, they are still servicing low to mid tier athletes but have expanded to serving large organizations such as the NFL, NBA, NHL, and MLB. We take great pride in still having a healthy relationship with them and have made their platforms success paramount.
As for the required resources, we would propose the following for the next 12 month schedule: