We don't provide unrealistic project estimates to close deals.
We educate our clients so that they can make good business decisions instead of capitalizing on the lack of software expertise.
We recommend partner firms if we believe they would be more appropriate for a client's problem.
We write high-quality code so that it can be maintained as cheaply as possible.
Be pleasant to work with.
We help each other learn new things.
We compliment others when they write good code.
We try not to complain.
We don't dump our work on others.
Respect the autonomy of fellow developers.
We avoid micromanagement.
We value logic and reasoning over seniority when making technical decisions.
We avoid prescribing up-front solutions to problems; we prefer allowing developers to explore their ideas first.
Pursue a deep understanding.
We don't just code and hack our way through problems.
We aren't satisfied just knowing that it works; we want to know why it works.
We view the computer logically and without superstition---there is no magic.
Build quality software.
We write automated tests to guide our design and ensure our code continues working.
We write code that is as simple as possible for others to understand.
We prefer projects where we have the time to build the system architecture correctly from the beginning.
We only accept projects that will provide us an opportunity to learn.
We offer developers time to acquire new skills and pursue their interests.
We write articles to solidify our understanding.
We enjoy experimenting with new technologies so that we can use the best tools for the job.
Be responsible for our work.
We push hard to meet deadlines.
We don't leave sloppy bugs for others.
We don't leave broken code, even if we did not write it ourselves.
We try our hardest to solve problems before asking others for help.
We continually and actively improve the development processes used in our projects.
Understand the business context.
We aim to understand the purpose of a feature before we build it.
We use technologies with the best interest of our clients in mind, even if they are less appealing to us as developers.
We don't waste time over-building features that are not relevant to the business.
Make the world better.
We love working with talented people, regardless of their age, gender, ethnicity, sexual orientation or background.
We financially contribute to open source projects that we use.
We don't work on projects that we don't believe make the world better.
We don't work on projects that we don't believe will be used or will be useful for others, as this is demoralizing.
We value correct grammar and a strong grasp of the English language.
We write with a clear and professional tone.
We try not to send vague or confusing emails.
We invest in improving our writing, presentation, and conversational skills.
Enjoy our work, and relax.
We want everyone on our team to enjoy their work.
We provide a flexible work environment.
We push back on unrealistic deadlines.
We encourage vacation to maintain a sustainable workload.
We publish our employee handbook online so
that prospective team members can get a feeling for how we work.
We founded Innolitics in 2012 under the name of "EiPi Consulting," a
pun on Euler's
formula--a mathematical equation that is used widely used in wave mechanics and electrical
engineering. At the time, David and Andrew were completing their graduate
degrees in Biomedical and Electrical Engineering (both were studying
optical microscopy), and Yujan was finishing medical school.
In the early years, EiPi Consulting worked on web applications for
clients in various industries.
We switched our name to "Innolitics" at the start of 2015 and decided to
focus on medical imaging applications. This focus was a natural fit given
the team's backgrounds and interests and has allowed us to provide
unique value to our clients as a team with strengths in medical imaging
and modern web application development.
In early 2016 we hired our first two employees, and we've been growing ever since.