Earlier this month, we started talking about a new initiative at GraceRock: the building of GraceBlocks. We shared that GraceBlocks will be a system for building amazing software, block by block. We then introduced the 10 pillars for a good system of record. In this week’s post, we explore pillar #3 Search so users can quickly and easily find things.
If someone has taken the time to enter data somewhere, they are expecting to be able to find it again easily, or they are hoping someone will find what they have submitted. In the case of the recruiting systems where I’ve worked, search has largely been focused on the ability for candidates to search and find relevant jobs and for recruiters to search and find relevant candidates. This is no small task, especially for organizations that can have thousands of jobs open at any given time and millions of applicants applying.
Let me first say that we are separating Search from Intelligence as pillars. The concept of artificial intelligence helping evaluate and give recommendations or ranking or relevance about search results is a capability we’ll discuss but it’s beyond the scope of Search. That “intelligence” becomes an attribute for searching. Searching at its basic core for us means this:
- Consistency so users can always know how to filter the data to which they have access
- Full-text indexing of documents so when attached, they are part of what can be searched
- Speed so that the results come back quickly
Consistency: All too often, when building a system, the filter options for the most important part of the system has the most robust options, and other parts suffer from a lack of focus or support. Systems built on the GraceBlocks framework will share the same search filtering capabilities for all the data. This means administration areas like those for managing core system data such as templates, questions, tasks, skills or competencies will be just as robust in their search filtering as what is needed for the most thought about use cases like candidates and jobs.
Full-text indexing: Being able to connect documents with your data is very useful, but documents are far more powerful if they can be searched. The approach to document storage for an enterprise system at scale is something that can easily grow out of control if not well thought out up-front. With this in mind, we’ll be architecting for scale in our approach to both document storage and texting indexing.
Speed: With the best UX design and search features in place, if the data is not quick on retrieval, then all is lost. No one wants to go get coffee while their system executing a search. At the end of the day, for us, speed comes down to the data storage design to support large scale multi-tenancy. As with all design decisions, there are trade-offs in regards to simplicity, ease of maintenance, storage costs and of course speed of data retrieval. As we continue our architecture & design, search speed will be a primary design principal guiding how any future functionality will be developed, where speed will always come first. Without speed in search results, not only is our search pillar compromised, we’ve also lost on the ease pillar that we talked about last week.
Want to stay informed?
Be sure to sign up for updates. And we’ll keep you posted as we continue building GraceBlocks!