Engineering at MojoTech
There is a high rate of failure for projects in the software development field. One of the core reasons is a false notion that all software engineers are the same. They are not. But, unless you are also a software engineer, it is difficult to sort the wheat from the chaff.
MojoTech was founded by, and is run by, software engineers. Through collaboration with peers, conference attendance, in-house workshops, dedicated time to experiment, mentoring, and contributing to open source software, our engineers develop mastery of the technologies, tools, and engineering practices required to build serious software.
We are proud to attract, train, and retain exceptional software engineers, and every one of them is a full-time employee dedicated to perfecting his or her craft.
Pragmatism meets innovation
Our engineers are practical; we instill the value of building the simplest thing that works. At the same time, when faced with difficult problems, we empower our engineers to take innovative approaches. Our shared goal is to make a product vision real, and that means we scale our practicality and innovation to the needs of the task at hand and the value it brings to our client’s product. We pride ourselves on being able to articulate the pros and cons of available solutions and make smart recommendations in the best interests of our clients’ values.
Correct, Complete, Concise, Clear
Peer code review is an integral part of our process. As professional software engineers, we believe that a strong review process helps us ensure that the code we are writing is of the highest quality. The agile principles sum it up best, “Continuous attention to technical excellence and good design enhances agility.” Code review promotes the ability for engineers (both ours and clients) to discuss, refine, and perfect the architecture and code required to meet product goals and requirements.
Comprehensive Testing
We utilize automated testing tools to identify defects and regressions, static analysis tools to ensure we’re adhering to our standards, and our in-house human testing team to fully test our software. We also take advantage of the latest continuous integration and automated delivery tools to optimize delivery and deployment.
Adept Team Players
As software evolves we continue to optimize the size and makeup of our teams to suit emerging technical, speed, and usability requirements. Our engineers are experienced working on teams with engineers, designers, product managers, and stakeholders both at MojoTech and with clients. Successful products require teams that know and fulfill their roles and can collaborate with others on the team.
Agile, as it was meant to be
Agile has become an almost meaningless buzzword in our industry, associated with posture at meetings, specific tools and process, no planning, and a touch of organized chaos—which is unfortunate because at its root, the agile movement was not about process, but about values. While process is an important enabler of our goals, it’s never the goal in itself. We aim to focus on the solution, not the process, and all of our practices are in service of delivering optimal value.