Browse by Category
Get up to $300 bonus now! Click Here!
Portfolios
Description
profile
Home Freelancer Orbitsoft A.
Orbitsoft A.Orbitsoft A.

Orbitsoft A.
$35/hr
United States

N/A
Recent activity : More than a week ago
Share profile
Invite to job
Portfolios
Description
Report
Orbitsoft A.
Orbitsoft A.
N/A
United States
Recent activity : More than a week ago
Invite to job

Share user profile
Copy link

Report

Freelancer skills
About freelancer
Angular | React | TypeScript | JavaScript | Node.js | PHP | Symfony | Laravel | Golang | Java | Kotlin | Swift | C++ | QT | DevOps | CI/CD | Docker Founded in 2001, OrbitSoft is a global software consultancy of 200+ that specializes in multi-platform software innovation. We also provide out-staffing and out-sourcing services. We specialize in Product and App Development, A.I. and Machine Learning, Quality Assurance (auto-testing, manual testing, bug fixes, etc.), and UI/UX Design. We have adapted solutions for markets from many different regions, countries, and localities; from the USA and Canada, to the UK, Germany, and all across Europe, to Brazil and Argentina in South America, and to Australia, China, and more.

Portfolios

Case: Shopify Development — how we remade an online store on Shopify for a German company
The company has grown, and their old Shopify website online store was outdated. This German company sells furniture for children’s rooms on the Western European market. There’s an online store on Shopify, but the client doesn’t like it. The design is outdated, it’s inconvenient to fill out product cards, and there are so many products that it’s difficult for buyers to find the one they need. They needed some professional ecommerce website development help. Why choose Shopify? Shopify is an online store builder and hosting platform with a paid subscription. The Shopify eCommerce Development service offers many convenient tools for online trading by default. Additional functions can be found in annexes to the main system. The client initially chose Shopify because this platform is especially popular in the US, Canadian, and European markets. It includes Shopify Theme Development & Customization, great Shopify Support, Upgrade & Maintenance Services, Shopify Migration services, and many other advantages: It’s friendly with American services by default: it easily integrates with Facebook and Instagram, and is well-indexed by Google. There’s no need to hire specialists to drive traffic or for SEO optimization. Product Migration to Shopify is direct and no-nonsense. For us as a Shopify developer, it has many built-in tools for online trading, such as hosting, an SSL certificate for a secure connection, and payment infrastructure in accordance with the PCI standard. There’s no need to do this separately, which saves time and effort. eCommerce Development and ecommerce website design with Shopify don’t require deep programming knowledge. To create an online store, you don’t need a large team. On this project, we only needed a designer and a layout developer. The platform has a simple and clear administrative panel. It’s easy for the client’s staff to work with. The Shopify store is easy to scale. The service is suitable both for a small workshop with big ambitions, or for a huge hypermarket. The Shopify website builder, Shopify app development, and Shopify integrations are straightforward and easy to accomplish tasks. Entrepreneurs trading in the territory of the format CIS countries might hesitate seeing Shopify’s lack of built-in integration with the MoySklad and 1C systems. However, this isn’t a reason to give up on its benefits. If a company isn’t intimidated by the platform’s tariffs, an experienced developer can programmatically configure the necessary integrations. Redesigned appearance and navigation Before starting development, we discussed with the client the design problems of the old online store, and their wishes for a new one: The external design of the site was created a long time ago and is outdated. Navigation suffers: there is no clear structure in the catalog, all goods are simply in one big group. So, in order to find the main product of the company — ready-made children’s rooms — a user must first select the age of the child, then gender, and only then proceed to the selection of the collection. The more difficult it is for a customer to find what they need, the more likely they are to abandon their purchase. Cards of goods are not informative. The parameters are listed in solid text in a single window. This is inconvenient for the buyer to read the description, and makes it difficult to choose a product. We formulated the terms of reference. We described the stages of work, the functional structure of the new site, and designed a new, logical user path. Instead of just drawing a new kind of interface, we developed a design system for the client. This is an integrated approach to the design of software products, combining design and programming: A designer creates the main visual elements: the appearance of buttons, icons, panels, and other components of the interface using the client’s corporate colors, fonts, and logo. The rules of application are described: where and how to use each element. A developer recreates visual elements in program code, and forms a framework from them: a library of components in a single repository. From such ready-made components, design bricks, you can assemble interfaces for a given product and any future, even with a different team, over and over again. For example, if a customer wants to expand the store or release an application. The benefits of design systems are especially noticeable in large projects where many interfaces need to be designed. The traditional approach takes a lot of time for rendering layouts and programming. Errors inevitably appear in the process. For example, someone might miss the color of the buttons in the application, or someone on the site might miss the size of the fields, and so on. The development of a unified design system automates such processes, eliminates errors, and saves time. In order for the client to see how an online store with a new design would look on different devices, we laid out static HTML pages. These pages are not connected to the server, but look like full-fledged site pages, «frozen» at different stages of the user’s journey: choosing a product, send products to the shopping cart, placing an order, and so on. After approval, we proceeded to the development of the design theme. The task was complicated by the fact that the old store had to keep working until the customer switched to the new theme with a new directory structure. To do this, we made additional temporary logic that ensured the continued work of the old store structure. Redesigned pages of furniture collections It’s more profitable for a store to sell not just one piece of furniture, but whole rooms, i.e. sets of furniture, lighting, textiles, and decor made in the same style, everything needed to completely furnish a nursery. On the old site, the pages of the rooms contained only photographs, the cost of various configurations, and links to individual items from the collection. We added sections with text descriptions, a section with accessories from the collection, and the ability to upload a video about the room. The basic version of Shopify doesn’t support so many extra fields, so we used a Custom Fields app. Shopify apps are plugins, add-ons that extend the functionality of the main service. Add-ons are created by third-party developers and uploaded to the Shopify App Store. Redesigned individual product pages In the old version of the online store, product cards had to be filled regularly. The entire description was in one large field. It was cumbersome, and inconvenient for buyers to read. The client had to use lists to separate blocks of information from each other. Adding new products, and editing already created cards, slowed everything down. We created additional fields using the same Shopify Custom Fields app: We changed the logic of displaying delivery options and the availability of goods in the warehouse. We added a section with PDF-documentation for goods. For example, certificates, and instructions. We added a section with a video about the product, which is downloaded from the company’s YouTube channel. Dimensions, product characteristics, and customer reviews were moved to a separate system of tabs. We added a feedback page, and the ability to design landing pages. Landing pages are needed when a company is promoting on social networks or search engines. For example, the company announces a sale for a specific furniture collection and talks about it using targeted Facebook ads. By clicking on the link, the buyer wants to see information about this particular promotion. Therefore, instead of going to the general catalog, the customer should go to a landing page — a page dedicated to a specific advertising campaign. We added a designer for such landing pages to the admin panel. The administrator chooses a suitable template, arranges sections, customizes them, and fills them with content: text, pictures, and goods from the store. We also added an online customer support page. Previously, the company could only be contacted by phone or email. We designed FAQ sections, and Skype chat with a store employee. Trained store employees We prepared tutorials on working with the admin panel, added screenshots, and screen recording of non-obvious theme settings. At our meetings, we conducted express training for employees. Results The development of an online store for children’s furniture on Shopify took 25 working days. We: made a design system that the client can use in the future to expand the store and develop additional services. created logical navigation, and optimized the product cards. The user journey has become clearer and easier, and this will help the store to increase sales. added a landing page designer. Managers will save time running advertising campaigns to drive traffic. created a feedback page. It will be easier for buyers to contact the store and solve their problems. This will increase both service satisfaction and repeat sales for the company. The customer’s employees fill the new store with content: they update product photos, add images for categories, and fill in new fields and sections. Due to temporal logic, the old version of the store also works at the same time as the new one, so that the company can continue to take orders and make a profit. The customer will be able to turn off the old store as soon as the new one is ready.
View portfolio
Tasks we solve with Qt
The PosiFlora application places orders, accepts payments, and stores customer data PosiFlora is a POS and control system for business automation, trade, and warehouse accounting for the floristry business. It’s used by online flower businesses with delivery, supermarkets that sell flowers, and small flower shops. OrbitSoft developed this solution from scratch. The system meets managers' and employees' needs, those managers and florists who work with customers directly from a store or through social networks. That’s why the OrbitSoft team made sure that PosiFlora would work on different devices and in different formats. There is a web version, for example, and for laptops, an application. You can also use it from your phone or tablet. With the PosiFlora app, flower business managers and employees perform all the basic tasks for sales, accounting, and payments. For example, they can: -add a name, telephone number, and customer address, and place an order -accept payments in cash or with bank and credit cards -print receipts -save order information in the database -keep track of stock -write off flowers if they are wilted -allocate work shifts among employees Reasons to choose Qt for the PosiFlora application We decided to develop the accounting system in C++. On the market there are many frameworks for this language. We chose Qt. Let’s talk about how it helps us solve our problems. It saves us time and money on development. Applications can be native or cross-platform. A native application is developed for a specific platform, or they can be cross-platform and function on all platforms, for example on iOS or Android. In order to make native applications, it’s necessary to hire several programmers, and spend more time on technical support and program development. For this reason, we decided to make PosiFlora cross-platform to reduce expenditures and simplify resource allocation. Qt allows us to develop for several platforms at the same time. Regardless of architecture or bit depth, we write one program and distribute it immediately to any model of phone and tablet that clients use. If during the process we find a fault, Qt allows to fix it immediately in one place, so we don’t have to make changes on different platforms. No loss of application speed. Native applications are always faster compared to cross-platform ones, but if you use the framework correctly, the speed difference can be smoothed out. Qt is built on native function calls: it allows code to be used in another programming language. If a developer encounters a problem that Qt can’t solve, he doesn’t need to invent a workaround mechanism; he inserts JavaScript, Swift, or Objective-C directly into the code. This feature simplifies problem solving and ensures that the application’s performance doesn’t suffer. Easy integration with merchant acquiring, cash register, and bank. Floristry businesses connect different tools and services to accept payments. Among them: card payment terminals, barcode scanners, cash registers, and fiscal storage units for printing receipts and sending information to tax authorities. The businesses get some of their tools from banks or suppliers of cash register equipment. An app won’t be able to receive money until it learns how to have a good relationship with such companies. And that’s where the problems begin The language in which the tools from banks and POS providers are written is often in opposition to the application. To integrate them, developers need their code. It’s obvious that few are ready to open the code for their programs, and there is no way to achieve this without the code. Negotiations begin, and the app customization slows down. The problem is solved with Qt. It was created for the C++ language, which is the language most often used for payment systems. The PosiFlora application uses Qt, so integration proceeds without the need for negotiations. All you need to do is to plug in the library for the checkout or terminal, and integration takes place seamlessly. The possibility to create complex synchronization mechanisms. The accounting system stores data on orders, lists of florists' clients, information on stock balances, and lists of employees. As long as the internet works, everything goes smoothly. The florist places an order, enters the purchase information, and enters the client’s data into the system. And now he is sure that his colleagues know which bouquet to pick and by what time. And then the Internet shuts off: the record of the order is no longer there, and no one remembers the details. Question: what do you do in this situation and what do you tell the client? Our team knows that some issues with connections are possible, so we were looking for a solution to insure uninterrupted business. Qt helps with that. It allows the application to work offline: data is saved in all cases, and as soon as the Internet comes back online, the information is uploaded into the system. This is possible because the database has no limitations on its synchronization with different devices. It doesn’t need to adapt to interfaces. Qt is compatible with different interfaces: you can write code with the app business logic and connect it to any external part. For example, if you want to move an application — which previously ran on a desktop — to a phone, you need only design the interface and connect the existing business logic, and the task is ready. Users can work on outdated hardware. Qt developers support all versions of a framework, so PosiFlora can work even on first generation iPads. Developed community. Qt is one of the oldest frameworks, its open source, and has excellent technical support. Qt has been under development since 1995, so there is a lot of data regarding its use. If we come to a dead end, we can easily find the information we need, or ask for advice on forums or from tech support. Work results with Qt: we launched the application in just 9 months With the help of Qt and our in-house expertise we developed an application for an accounting system in just nine months. Our team updates the functionality almost every month, so PosiFlora is continuing to become even more convenient and useful. Over 1,200 retail stores are using the application as of June, 2021. Here’s a list of the benefits we’ve gained from working with Qt. The app can be used from any device. PosiFlora supports: All iPads, and iPhone versions starting with the sixth generation. More than 10 thousand models of Android devices. Qt can also let you quickly develop an application for a new platform. We are constantly adding new features. In two years, the application has covered over two thousand tasks. Among them: Implemented delivery ranking of European labels. Support of barcodes was added. We made it possible to connect information from different advertising accounts. Faster application updates. Since the launch of PosiFlora, we’ve released 87 updated versions of the application. Despite the number of updates, we didn’t need to involve additional developers. Versions were rolled out for all devices at once. Savings on development resources. We need only two programmers to write updates and maintain the application. Therefore, customers pay a lot less to work with us.
View portfolio
VPN App: How We Fixed Other’s Mistakes and Launched the Project
The customer is an advertising company in Canada. One of its projects is a service with entertainment content. Most of the content is published in video format, and it is popular: it’s viewed by 350 thousand users every day. Problem: service is losing users due to closed access The customer earns from showing ads to users of the service, for example, in the form of videos, banners, pop-ups, and other formats. At the beginning of 2021, the service has had more than 9 billion ad impressions per month. The logic of making money is simple: the more users visit the site, the more ad views they have and the higher the customer’s earnings are. Thus, the problem is obvious: to increase the number of users. How customizing personalized recommendations helped increase ad revenue. There are countries where users are limited in their choice of content for various reasons, often concerning entertainment videos. The customer knows that the content of the service is legal, does not violate the law, but due to the peculiarities of the policies of certain countries, users cannot enter the site. Another problem is the fear of users that their data can be stolen and used for illegal purposes. Attackers can gain access to their accounts on social networks, to bank accounts, and other services. Solution: launch own VPN app When users want to securely access a site, they can use virtual private network technology, aka VPN. It encrypts the data that the user transmits to the ISP, so that it’s impossible — or very difficult — to access the user’s traffic. There are already a lot of VPN apps on the market. The customer analyzed ready-made solutions and came to the conclusion that it would be more profitable to create their own application. According to the company’s plan, it will be used by readers of its service and users of other entertainment services. In this way, the customer will stop losing their audience and also earn money from it. A VPN helps you stay anonymous and secure, so users use it for a variety of different services. To develop the application, the customer first contacted one team. It was chosen for the price: the team offered the cheapest solution, and it seemed like a good way to save money. But the idea failed. According to the plan, the application should have launched after six months. But almost a year passed and there were basically no results. It was then that the customer turned to Orbitsoft. After discussing the problem, we took up the project. We work on each project in stages, and divide the stages into iterations. After each, we tell the client what has already been done and at what stage the project is. In this way the customer is always up to date, and if something is wrong, we can quickly discuss it and adjust the work. Stage 1. Analyze situation The work on the application was divided into six stages. Since we didn’t start from scratch, but were given the results from the first team, the first thing we did was analyze what had already been done and how it worked. In fact, nothing has been completed. A few examples of what they found: The application had a monolithic architecture, so it was difficult to test and maintain it. For the customer, this means spending additional hours to add any new features. It would be better if the architecture consisted of layers: you can make changes to one layer and test only one layer, and not all of them at once. There were a lot of bugs in the code, so the program often crashed. For example, due to an authentication token, not all of the features had been updated. Technical block: examples of development problems from the first team Backend: - frequent duplication of code sections - lack of a unified code style - incorrect integration with the payment system - lack of automated deployment to servers Frontend: - incorrect implementation of routing - no animations for pop-up windows and view transitions - impossibility of selecting the number of displayed lines on pages of different types of statistics Web version: - unoptimized code: a lot of repetitive code fragments, constants hardcoded into the code, no OOP, interface and code responsible for the application logic are mixed - poor performance: no caching, requests to the server return the same data and are executed several times in a row in different places of the application, multithreaded programming is not used, requests to the API are executed in the interface thread. Delay when working with the interface reached 15 seconds - security hole: app saves usernames and passwords and other confidential data in an open text file. Some requests to server return confidential data even with unauthorized requests. Mobile version: - errors in logic of payment transactions - duplicated animation when loading some screens of the application - different layouts for iPad and different iPhone models - difficult redesign of the application - no localization of the application -incorrect work of tokens for authorization - processing of errors of returned requests from the API not implemented everywhere - configuration files used to store data, which made it difficult to work with data -selection, filtering, and sorting - layout is not adapted for screens of different sizes Stage 2. Discuss with client and clarify goal of project Following our research, we contacted the client and discussed our results and work plan. While discussing, the client clarified the technical task. Now we not only had to fix the errors of the first team, but to develop a more advanced version of the application. Our project is a cross-platform application that can work with different operating systems. Step 3. Study best practices in market and choose solution Before starting development, we always study ready-made solutions. Consequently, our next step was research. This helps save the customer’s time: we don’t waste resources on knowingly inefficient solutions. Instead, we cut off the excess and invest in what will help the client earn more. For example, to transfer the application from Android to iOS, the customer suggested using a converter. We studied it, found limitations in it, and began to think about other options. As a result, we chose Kotlin for Android and Android TV, Swift for iOS and macOS, and C# for Windows applications. We studied different architectures and code of ready-made applications. This helps to quickly select the best methods for solving the client’s problem. Stage 4. Design and develop application internals First, we made a minimum viable product — an application that you can download and at least log into. To test the work under real conditions, we agreed with the customer to offer free access to users, and they were warned that we were testing the application. A week later, we realized that there were no errors, and finalized the application. For example, additional functions such as auto-connect at startup were added, and the design was updated. There were also some difficulties with the project. One of them was related to integration with iOS. At first, some of the data was not always displayed correctly, for example, whether the user had really subscribed or whether the trial period was still valid. This happened due to the App Store’s buyer’s authentication methods. To fix the incorrect work, we performed several actions. One of them was to implement the «grace period» function: if the user cannot pay due to technical problems of the application, we don’t block access. The application is available, but we and the user receive a notification: the payment has not been received. This helped us to not lose customer loyalty — as they were not to blame for the bug — and gave us time to find the error and fix it. Results: we launched app on schedule and it’s now in demand The app was launched in January 2021. It took us six months from first negotiations to launch in the App Store and on Google Play. During this time we released two versions — the minimum viable product (MVP) and the full-fledged one. 50k - Number of times app was downloaded from Google Play during first 3 months. The app already has its own audience. By the beginning of April it had been downloaded 50 thousand times from Google Play alone, and this is taking into account that there are dozens, if not hundreds, of VPN solutions. For us this means that users are satisfied with the set of functions and they are ready to work with the application. The customer is pleased with the result and the Orbitsoft team will maintain the application until the end of the year.
View portfolio
standup-comedy-experts,Stand-up Comedy Experts#storytellers,Storytellers#advertisers,Advertisors#salesforce-app-developer,Salesforce App Developer#wireframing-experts,Wireframing Experts#squarespace-designers,Squarespace Designers#chatbot-developers,Chatbot developers#hootsuite-specialists,Hootsuite Specialists#scrum-master-professionals,Scrum Master Professionals#document-scanning-specialist,Document scanning specialists#blockchain-tester,Blockchain Tester#software-architects,Software Architects#conversion-rate-optimizers,Conversion Rate Optimizers#lumion-specialists,Lumion Specialists#freshdesk-specialists,Freshdesk Specialists#mercurial-developers,Mercurial Developers#nginx-developers,Nginx Developers#git-developers,Git Developers