Browse by Category
Get up to $300 bonus now! Click Here!
Cao H.Cao H.

Cao H.

Recent activity : online
Share profile
Invite to job
Post a job like this

Mobile App for Musicians

Home Freelance Portfolio Mobile App for Musicians
Post job Invite
View profile

A mobile platform that helps musicians record and share music ideas, as well as collaborate on them. The platform comprises an iOS application supported by a BaaS solution. Applied Technologies: Swift, AudioKit, CFNetwork, Core Graphics, Core Telephony, Quartz Core, Firebase for cloud back-end, UI/UX design, prototyping, manual testing, Agile management framework

Share this work sample
copy link
Similar portfolios
Custom application development for Manufacturing
mobile app development Android App Development
Anirudh M.
A mobile platform that helps musicians record and share music ideas, as well as collaborate on them. The platform comprises an iOS application supported by a BaaS solution. Applied Technologies: Swift, AudioKit, CFNetwork, Core Graphics, Core Telephony, Quartz Core, Firebase for cloud back end, UI/UX design, prototyping, manual testing, Agile management framework
mobile app development
Cao H.
Bicycle and bikes ecommerce based website
Git PHP WordPress eCommerce Website mobile app development
Shagufta A.
Experience in designing websites, logos, social media banners, Business Cards, Social media posts. I have worked with international clients ensuring quality design and satisfaction. Strong grip over Adobe illustrator, Figma Cinema 4D and related apps. I can start from a rough concept, turning it into a marvellous design, going extra mile and delivering above expectations
UI design UX design Web Design Logo design Graphic design Mobile Development mobile app development
Abdul B.
My General Resume in Regards to being an android mobile developer
Java Kotlin Writing Reading Tutoring Mobile Development Android App Development
Ahmed M.
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.
Swift Vue.js Kotlin Node.js React.js WordPress Visual Basic for Apps Testing and debugging mobile app development Android App Development
Orbitsoft A.
I am a passionate and curiosity driven developer with years of experience and a proven track record on freelance platforms. I can write clean, scalable, and testable code that is easy to maintain, refactor, and expand. I take pride in my work and stand by its quality. Would love to bring your idea to life and suggest best practices. I have 10+ years of immense experience with many sides of both Android and IOS app development, utilizing a variety of tools such as Java, Kotlin, Swift, Obj C, Python, REST APIs, and multiple Javascript frameworks like React, Node.js, or AngularJS.I am using react native and flutter to develop cross platform applications. I am familiar with the entire development process from conceptualisation and discovery to the final publishing of the app. I am responsible for managing the whole process, from prototyping to development till deployment. TECHNICAL SKILLS ✅Firm grasp of the JavaScript and TypeScript, including ES6+ syntax ✅Strong experience with React Native ✅Redux Saga and Redux Thunk ✅React Hooks ✅Integration with RESTful APIs ✅React Navigation and React Router ✅Experience with Push Notification ✅Experience with Google Maps Sdks in React native ( IOS & Android) ✅Experience with graphs tools (Charts... etc. ) ✅Experience Multi language Feature ✅Experience with Firebase ✅Basic Experience about unit testing ✅Strong Knowledge of Git ✅Strong knowledge of GitLab, GitHub and bitbucket ✅ Basics of PHP 🚀 Flutter: State Management: BloC/Redux/MobX/GetX/Provider Networking: Chopper Routing: AutoRoute Dependency Injection: Injectable/GetIt Immutable Data Classes: Freezed/Equatable Animations: Hero/Flutter Animations My professional goal is to provide quality Mobile solutions and services that satisfy my clients' requirements and exceed their expectations. Positive feedback is the best reward for my work.
MERN flutter Angular React.js MEAN Stack Express JS React Native iOS Development mobile app development Android App Development
Imran A.
We have created a socket named CRC. It takes a socket ID. If the socket ID is in use then it will create a new socket ID and fills the port. If the port is in use, it will create a new port. We can also use it by default or we can give the ID to create it. On the server side, we have implemented a CRC and we have also created a new socket ID in it. Threads are also implemented on server side. Result we get comes from the server side to the client side. On the client side, we are giving inputs to the server as string. As mentioned in the document, the buffer size is 10 so we have given a string of 10. We have also created a socket here and connected it to the server. When server is connected to the client, then a buffer is created on client side in which we can enter the input.
Web Design C Programming c++ programming Web Development mobile app development
Muhammad Z.
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