Logicify is a software research-and-development company with a strong technology focus (Python/Django for back-end, Angular for front-end). Full-cycle agile development. Turnkey solutions and project-based staff augmentation. Technical consulting for business founders.
ComplyAdvantage, EPIC Conjoint
- App Designing (UI/UX)
- Software Development
- Web Development
- E-commerce Development
- IT Services
- Mobile App Development
- Small Business(< $10M)
- Medium Business($10M - $1B)
Very happy client
Thank you so much for the positive feedback! It's a pleasure working with you.
C-Change Labs needed to build a cloud SaaS tool for the North American construction industry to help them evaluate and reduce greenhouse gases (GHGs) emitted in the manufacture of building materials, without loss of performance or excessive cost.
Information about materials is provided in Environmental Product Declarations (EPDs), typically in non-standardized PDFs. With thousands of products and poor standardization of data, it is hard to make practical use of these to make business decisions. The challenge was to digitize these machine-unfriendly EPDs, store them in a database alongside product performance and location data, and offer industry-specific searches to make them usable. With a relatively nontechnical audience, it was important to offer rich visualizations, ease of use, and plenty of flexibility.
The solution combines external services (DocParser, Box.com) with internal logic via webhooks. An automated QA process finds errors in the imported documents, which can be corrected by improved scripts or by data entry staff. The data is stored in a Neo4J database, a flexible graph-oriented database managed through a flexible Data Object Model. Hierarchical data models exploit the noSQL properties of Neo4J to allow the tool to handle an ever-growing list of material types with their own industry-specific properties. The graph features are leveraged to ensure privacy, and enable collaboration among manufacturers, sustainability program operators, and engineering professionals.
The whole solution is scalable, containerized, and deployed on Azure.
Savvy Aviation provides professional maintenance management, consulting, prebuy, breakdown assistance, and analysis for owner-flown general aviation airplanes. Its mission is to provide expert maintenance guidance to aircraft owners, helping them achieve the highest level of safety, reliability and performance while eliminating unnecessary costs and risks.
The product initially consisted of two web apps. The first app covered the plane pre-sales process. The second app collected info from the airplane telemetry monitors and allowed its interpretation, including advice from the company experts. The data is all in a different format and the application parses it consistently, getting info about temperature, pressure, GPS tracking per each flight session.
The main challenge was to merge the two original applications without applying any quality improvements in order to save time.
We set up a proper development process, introducing an Agile approach, providing QA and documenting all features. The customer provided acceptance, communication with the tech support team and other personnel, sometimes contributing to the code himself as a developer. We proceeded with the merge, fixing critical issues found along the way. As a result, the customer receives a single unified solution with all features in one place.
Free Software Foundation Europe is a charity organization that empowers users to control technology. Free Software gives everybody the rights to use, understand, adapt and share software. These rights help support other fundamental freedoms like freedom of speech, press and privacy.
The EU is getting ready to vote a "Copyright Reform" package in July 2018. It would fundamentally undermine the foundations upon which Free and Open Source Software is built. The proposed Article 13 of the EU Copyright Directive targets every online service that allows its users to upload and share content with each other, including code hosting platforms. The latter would have to use content recognition technologies to decide what material software developers should be allowed to share. As a result, massive user code base would be monitored and blocked from being shared online at any time.
To deal with this situation, FSFE created SaveCodeShare in September 2017, an initiative to bring awareness about this unintended impact on software sharing platforms. They needed to design and develop a website for this campaign, so that ordinary users could ask them to connect to their deputy or MP.
The main challenge was a combination of a very limited time and small team. We built a solution of 3 modules to address registration, collecting information about the applicants and an admin area.
Free Software Foundation Europe helps individuals and organizations to understand how Free Software contributes to freedom, transparency, and self-determination. They encourage people to use and develop Free Software and provide resources to enable everyone to further promote Free Software in Europe.
Account Management System (AMS) is used internally by FSFE. It has several components: a user-facing website, a Python interface to the FSFE Community Database, an OpenID Connect Provider for the AMS authentication, and a dockerized PostgreSQL database. All components are Flask-based.
The solution is open-source, so parts of it were completed earlier by other dev teams. We started the project fixing some issues in the existing OpenId Connect module, and then extending it with login and registration via email. The single sign-on was used for people to register and donate FSFE. Donors were motivated by on-site rating. Along with the donation, the sign-on was used to access other FSFE services. For example, by using this single sign-on, people can join FSFE with different roles: as designers, developers or translators.
We quickly completed the initial development tasks and then spent about 2 months to stabilize the project and implement several change requests. Finally, we documented all the work done and handed the project to the customer for further development.
FSFE is supporting AMS at the moment and the project is in use as of 2018.
This educational website would create a space to give children the online medium and tools to access, connect and engage with other children from all over the world through their respective schools. They could learn about each other, share information, work together, and over time become friends. The main idea was to ensure that future generations do not grow up with high level of misunderstanding and intolerance.
The project was a startup, with quite limited resources and time. We proceeded in Agile-like iterations to achieve the MVP stage and get the customer ready for demonstrations to the potential investors.
We implemented a number of modules for this website. One of them was an area for children to learn more about the lives of others all over the world, and to share their own experiences. Another was a place for schools and classes to collaborate on projects. The projects could be aimed at learning about life in another country, life in the same country but with different socio-economic circumstance or beliefs, or working together on a joint project arranged by the teacher. One more module was used by children to leave messages and communicate with their new online school friends.
There was also a blog, a section for educational games, an administrative module with an ability to control children abuse and improper wording.
We built the MVP and the customer started to work on raising funds for further investments.
OT-OIL is a Russian developer of corporate information solutions - highly specialised ERP - for oil and gas companies in Russia. The solutions cover all levels of enterprise management in all geographic locations. OT-OIL organizes data warehouses and data banks, creates centralized and distributed storage units of structured information for energy companies and engineering centers. They optimize production processes and automate various tasks, from planning to monitoring key upstream processes.
OT-OIL asked Logicify to create a number of visual components for their oil and gas tubes monitoring system. They had established a heavy waterfall-like dev process, with extremely detailed specifications and project meetings. There were strict and formal requirements for naming components, classes, and other entities. We had to sync this process with our Agile style and walk through several iterations to complete the assignments.
The customer had a closed proprietary system, with an external UI and components library. We enriched the latter with a multi-select picker, an advanced text field with complex validation system, and a multi-functional rich calendar component. Another task was to create a visualization tool for the oil wells. It was interactive, displaying various parts, events and actions when user hovered over its different parts. User could zoom standalone parts, see their description, specifications, materials the details were made of, etc.
The client integrated our components into their proprietary system, thus adding usability to the end product.
ScreenSpaces is a social publishing platform that uses highly relevant content to bring communities to life and drive activation and conversion. ScreenSpaces enables people and businesses to easily set up, publish and syndicate self-contained ecosystems of highly relevant multimedia content, from a variety of sources, without the need for special programming skills.
The client wanted different pieces of software: a self-service public portal with Content Management System integrated with the personal area, a public SEO-optimized portal, and an admin console to track client status, enrollment and payments.
Together with the client, we formulated the complex requirements for the system behavior based on the subscription plan and payment status. We setup a small yet fully functional dev team for the development, and reduced it to a single support person when it was required later. The complicated requirements for the combination of CMS and user account settings, product setup, invoices, payments and subscription plan were addressed by using the right technology. We used Django CMS with custom modules. We also based our backend admin console on Django Admin to reduce development costs. Multiple environments were setup with different purposes, starting from a Continuous Integration to the Production environment, which allowed careful testing and delivery process.
As of 2018, Screenspaces continues to maintain the product, attracting even more customers.
Elog.io is a good example of an open source and free software. The products itself is a tool set for web researches. It integrates with the browser and then, when the images are detected on a page, identifies images in the Elog.io database to find attribution information. Basically, it allows users to easily find an answer to the question: is this photograph I'm looking at openly licensed? If no, who holds the copyright? The solution is based on advanced perceptive hash algorithm to find visually similar images even if they were colored, resized or cropped.
We were making a browser extension which would inject a script into a page and then find all images. Specifically, it scanned for images on the page and talked to an API to identify, annotate and mark each image with license and author details. It would tell the user whether this is a known image of a known author, or it has been found on the web.
Logicify set up a team of a single person and technical advisory access to accomplish this project. The developer had to analyze a large sample of possible website designs and do extensive testing of the resulting extension to make sure the injected script would not interact with the target websites currently opened in a tab. The algorithm for calculating matches was developed on the server side. Our goal was to work reliably with the heterogeneous world of web pages to locate images perfectly.
The product was completed and released into Google Chrome store.
Eltiland is an educational web portal which help develop kids from 0 to 8 years. It supports all participants of the education process: teachers, kids and their parents. The portal has a centralized library which stores lesson plans, illustrations, and methodical recommendations about preschool education. Whenever a teacher is preparing for a lesson, master class or interest group, they can easily find supplementary items such as pictures, verses or music and include them into their drills and games with kids, as well as add new items and share them with others. Parents can sign up to use free and paid programs, courses and webinars. Eltiland offers free demo lessons from these courses, so that parents will know exactly what they would pay for. Kids can read a special newspaper with colorful heroes to discover the world or play educational computer games directly on-site. They also offer reviews of popular App Store applications for younger kids and those with limited abilities.
The concept of the portal changed during the development, shifting from supporting talented kids to ones with limited abilities and focusing on monetization through paid webinars and courses. Target audience shifted respectively from kids to teachers/parents. This led to re-designing the portal and integrating with webinar and payments systems. We had to experiment with several of these to find the best combination.
As a result, the customer was able to start promoting this web portal on the local market and build the local community around the web solution.
OnTrack360 is a tool for physical asset lifecycle management. Imagine a printed ads company which owns 100 ads lightboxes in the city. Ads inside lightboxes need to be changed often, different stakeholders want to be able to track what is going on, people in the field need to know what should be their next place and what they should put into the next lightbox, and management needs to see through the day to understand where the process can be improved. OnTrack addresses all these needs in a single and coherent web interface. The patent-pending onion public key encryption enables tracking every single change in data.
ISIC Holding AG has refined corporate expertise in diversified sectors to provide their clients and investors with reliable and well-structured solutions in different industries for over 25 years. Their lead marine insurance product, SEAS-IT, is an all-in-one solution for supporting marine insurance processes. SEAS-IT caters to the marine insurance industry in all aspects of it's underwriting, survey, claims, internal communication and back-office. It is designed to communicate with the major accounting applications and is compatible with other third party applications.
The client already had a first version of the product. It was written in an outdated technology called Helma. The goal was to rewrite the application with Apache Wicket/Java to make it supportable and release a new version for sale. There was no specification, so we had to collect and recover the requirements from various sources, including consultations with experts. We had to build our own expertise of the domain area and make sure that the business logic of calculations, alerts and selections is retained in the new version of the software.
We dedicated one of our senior engineers to become a fully-immersed business analyst. While writing the new version of the software, we had to fix operations, replace some of the previous modules and reverse-engineer the sophisticated financial calculations.
We built six separate modules: Underwriting, Survey, Claims, Validation, Administration and Reporting.
The solution was completed in time and transferred to the customer.
As Logicify grew, we required a centralized place to store our internal rules and knowledge. This project was built as an aggregator of several applications and areas: a company knowledge base, feedback collector to get ideas from employees on different questions, a module to register and inform employees about their paid time off, and documents storage. There is also a section with educational videos from our internal IT talks and a constantly updated news column.
The main challenge is the discrete nature of the project. As this is an internal solution, it is done by the engineers who are not engaged in commercial projects at the moment. This results in pauses between phases. Besides, people on the team were changing every time as well, as they may be pulled to other projects.
Intranet was built on Python/Django CMS. Since we did not change this tech along the way, it eased resuming the project after each break when current team moved to a commercial project and intranet became abandoned for several months. Each team was fully-functional, with back-end, front-end engineers, QA and PM, supported by a designer from time to time. Along with the main functionality, we created several plugins for Django: one to structure and display video section, another for the footer with call to actions.
The first stage is over, and Logicify employees can access all company info in one place, without a need to investigate several discrete sources at a time. On-boarding process for new employees is now seamless and fast.
The System is an in-house Logicify management tool, used mainly for time tracking and office assets management. Logicify engineers fill in their timesheets on daily basis for the Time-and-Material projects. The admin can run a report against a selected time range and filter people per project to easily get an idea of how much hours the team spent for a month and what exactly they did. This report can be used as an attachment to invoices to the clients who want detailed financial reporting, as well as to improve internal planning.
Logicify needed a single place to track hours spent by engineers at different projects. These hours were used to produce invoices to be sent to clients, but were collected from several sources: spreadsheets, Redmine, or whatever issue tracking tool a specific dev team was using.
Since this was internal project, it was written by the engineers who were not engaged in commercial projects at the time. The dev process was thus periodic, with several changes of technology and requirements, and the testing sometimes did not catch up with the actual development. Consequently, the project took some time, as people were changing constantly. On the other hand, we were able to learn different technology without any risks.
We followed the regular dev process: collected requirements from the internal customer - our management team - and built the dev team from the engineers on the bench at the moment. Since the team changed frequently, we had to spend some time for code refactoring and optimization.
The System is currently in use.
The product is an air quality monitoring system collecting info from sensors across the Logicify open space. The sensors measure temperature, humidity and CO2 levels. If any of these levels are outside pre-set boundaries, a notification is sent to office managers. In addition to actionable charts allowing research and climate system tuning, the visual interface displays additional useful info: weather widget, agenda for the upcoming company events.
Working in an open space offices is a challenge - oxygen, shared and so much needed resource - depletes fast if ventilation is not sufficient. Minor loss of air quality is not something one can feel, but it already lowers performance and comfort. Although there are solutions on the market already, they are proprietary and tend to store information somewhere remotely, with almost no user control of this data. Besides, they require licensing and present a quite limited amount of functionality.
We spit the whole office space into zones, each with its own sensor array, then purchased components for the controller and assembled the system. The software solution consists of separate applications which are united using Docker containers. All info from the sensors is processed by a Raspberry Pi and accumulated in the cloud. We use InfluxDB for performance monitoring and alerting. A front-end app collects and visualizes the info using Grafana and FullPage OS.
Office managers can now quickly adjust temperature settings when it is needed. The second iteration of the solution will remove any need for manual control of air.
When Logicify was founded in 2010, it was a small team with all processes simple and visible. As we grew, additional processes were established, and at some point we needed an ERP-like system to keep finance, HR, accounting, document generation under control. At the same time, we did not require a fully-functional business system, which would have been excessive for our needs and too expensive to implement. Thus, we decided to develop our own solution, simple yet covering all our needs.
This internal ERP system consists of several pieces. The first one eases the internal payroll by generating and sending invoices to employees. Data is collected from Google spreadsheets, then pdfs are generated and sent to people as attachments. User interface is a simple Google page. The workflow is done on monthly basis or upon request. Another piece is an internal tool built to track paid time off for Logicify employees. It allows emailing one-click on-demand reports to people, stating how much PTOs they have left for the given period, as well as breakdown per PTO type (sick leave, vacation, business trip or shifting their working day).
The application was developed as a set of modules by a small yet self-sufficient dev team. It is built on top of the existing Google Apps infrastructure. We used Google Apps Script to connect several data sources and automate actions like creating pdfs and sending emails.
Only one person is in charge of this workflow now - the system does not require any intensive manual input actions.
Logicify public website helps us achieve our goals: to be found by our prospective clients and to showcase the work we have done. It is mostly an informational website with the blog module to convey our approach to doing things. Along with serving our own marketing needs, the site, in connection with its intranet counterpart, helps our employees educate themselves. Besides, with the help of our articles and blog posts, we try bringing new and fresh business information to our clients and prospects.
Logicify was seeking for a website solution, a Content Management System which would be secure and customizable. It should have allowed non-technical people, like marketing team, publish content, easily go through SEO steps and collect analytics info. At the same time, we could not afford to run a dedicated website development team all the time, because engineers were engaged in commercial products.
We selected Django CMS, as it was perfectly aligned with our company-wide technology stack. The first stage ended up with one-page public website. Then we gradually added additional modules: blog, articles, portfolio and case studies. Since Python/Django is our company stack, we had no difficulties when adding more people to the dev team or replacing them - they had to spend a minimal amount of time to switch contexts and start working.
The website has been live for years now, with regular updates and extensions in functionality, as well adding relevant content.
In 2017, we developed a Java framework for building smart chat bots to explore the trending technology. The framework provides a bunch of abstractions and allows developers to concentrate on implementation of business logic. The behavior logic is split into independent components. Users can create different sets of bot replies, randomly rotate answers for the same input, and setup different reply styles to simulate different bot “characters”.
We wanted to use chatbots within the existing infrastructure, avoiding deploying any cloud-based solutions due to internal security policy. At that time, the existing solutions did not match our requirements and limitations, so it was decided to develop our own.
We used our framework to create a couple of internal solutions. One of them helped engineers with their time tracking. This chatbot was integrated into our company RocketChat. People would write text in a free form in a dedicated chat room, like “Today I spent 2 hours developing my component X”. The chatbot would analyze and fill all this data into the proper spreadsheet for further analysis. Another solution was built to manage our complex virtual machines' cluster which we use to support development infrastructure for one of our customers. Team members could ask the chat bot and get info whether a specific virtual machine was up and running, display the list of virtual machines, and the list of available IPs reserved for them.
Both solutions were in use for a year until replaced by modern versions of respective apps.
This app was a database of movies, cartoons and TV shows accessible directly on cell phones and tablets. It allowed either viewing video content online or downloading it in background to a mobile device or desktop. Users could exchange files, recommend movies to friends, and stream their video to other devices. The content was virus-free due to forced on-server checks and subject to parental control. The search included numerous categories: genres, actors, pre-set criteria. The application was made for the Russian-speaking market.
We were engaged in creating a mobile app for Android v 4.x. The customer asked us to use Cordova to implement a tricky feature request - downloading the video in background. By default, Android 4.x suspends processes which are not active at the moment, so we had to think of a way to overcome this behavior, so that user would get video downloaded even if they lock the screen or start another app.
We deployed a small team which did the job. We took one of the existing Cordova plugins responsible for the download process as such, Cordova Plugin File Transfer. Our team then implemented the download feature with an ability to pause the process and monitor the overall progress. The customer was able to integrate it into their live application for production use.
The project was a private online video sharing service which provided consumers complete control over the distribution and privacy of their personal videos. Back in 2010, YouTube and Vimeo were the major platforms which were oriented at public video sharing. This product was a new type of video platform where users would share their private videos easily by selecting a limited circle of friends.
They were a startup with limited resources. The client wanted to have solution up and running quickly. They had graphical design mockups, and we were implementing both the back-end and front-end in a tight timeframe. One of the challenges was adapting video player for different browsers, as in 2010 there was no universal JS solution for this, but only Flash. This was one of our first projects in an agile methodology, so we had to experiment before building the whole dev process and match it with the customer’s tempo.
We deployed a small agile team of two full-stack developers, doing everything, from collecting requirements to testing and deployment. First, we re-designed the project using the mock-ups provided, and performed cross-browser QA. Then we improved sharing features, added comments to videos, and integrated a payment system. Video streaming was done with the help of Wowza media server, as there were no ready-made suitable solutions in 2010. We had to build two separate applications: for desktop and for mobile devices.
As a result, the first iteration of this video sharing website was completed and we released the MVP into production.
Betterfood.me is a smart assistant and a website which would solve an endless problem of group or team food orders. The assistant works by collecting everyone’s preferences, allergies, go- or no-go foods, and then sums that up for the person ordering catering. The next step would be to suggest restaurants doing delivery nearby, which can match the combined profile of the team, and assist in placing an order for delivery.. The Betterfood.me smart assistant would work instead of a human office manager collecting food preferences from the team members, removing the pain and solving the problem with ease.
The product demanded visual perfection, since it was one of the selling points. A great part of the interface structure was controlled by the choices and data. The startup pace of the company required an equivalent pace from the team, with the unforeseen events happening here and there. Moreover, we had to prepare to replace the back-end team provided by the client during the project, since their deadlines were not met.
Our team ranged from one-man to 5 people at different stages. We developed a strong culture of being part of the client team, and used all our skills and possible levers to deliver best. Together with the client, we set up a lightweight management process similar to Kanban using Trello, which allowed rapid changes in the priorities and made hitting deadlines possible. We created both the marketing website and the main web app from the skeleton to production environment on AWS. The designs were supplied by an excellent Betterfood designer, and all the tech was completed by our team, including the development process setup.
Upon the completion, the customer was able to have another round of talks with investors and possible partners to further develop the application.
BlastOut is a mobile app that allows people to interact within their own temporary social network. It facilitates local communications: within events and parties, but also at conferences, and enables people to make new connections easily. The application is a mixture of an anonymous imageboard and location-based forum, allowing users to upload a pic into a stream via their mobile app. The stream is geographically limited to a very close proximity of the one who queries. There is a commenting functionality and a way to share real life contacts if wanted by both parties; otherwise, the communication is anonymous. At the core of the solution there was a demand for an extremely effective location matching algorithm. It should have given an immediate answer as to which posts to show to a user given their approximate geographical location. Besides, the customer requested a profound feature-rich filtering. With the help of our team, the product moved from support-heavy and ineffective for this case MySQL database to MongoDB, which is more native for Node.js. The effective implementation of the search and location classification algorithm provided by Blastout in-house engineers enabled the locality-based matching of the app. The product was released to the mobile apps markets.
EPIC Conjoint empowers brands to conduct conjoint analysis in near real time. Conjoint is a precise, advanced and sophisticated method of market analysis aimed at finding relative importance of product features, optimal product configuration, and even pricing. Such research typically involves a specialist consultancy firm which rockets the prices and prolongues lead time. The EPIC Conjoint is a tool to facilitate these efforts. It is a Web app built for marketing people to help them construct and run the research they want: create a survey, choose visuals, set target audience, reach out and see the results. The application allows prediction of how the envisioned product will be treated by this audience on the market even before it is released.
The project has an extremely serious requirement of small time to market - the first working MVP should have been delivered to end users in just under 3 months. Another challenge was a need for strong math statistical skill, which was only uncovered in the course of the project.
The team was formed with a math statistical inclination of the project in mind. Team’s previous synergic knowledge and education helped understand, design and develop tricky algorithms enabling automation of one of the most advanced market research techniques available. The fast pace and time to market were addressed with the application of short iterations and rapid prototyping. The designs followed a solid process: Sketch - presentation of sketch - approval - delivery of a clickable interactive design prototype - implementation of the relevant feature in code. With this approach, the client was able to use artifacts of all the stages of the prototyping process for their own needs. For example, they could demonstrate the existing version of the product together with clickable designs of the missing parts to their prospective clients and investors.