What I Learned Building a Startup Mobile App with uni‑app and egg.js
This article recounts a developer’s experience at a small startup, detailing the reasons behind choosing uni‑app for cross‑platform mobile development, egg.js for the backend, the challenges faced during the project, and practical advice on hiring, team management, and avoiding common pitfalls.
Background
In June 2022 I joined a very small startup whose boss lacked technical and management experience. The company tried to launch a logistics‑related business quickly, but ran into financial difficulties and eventually dissolved.
Initial Technology Choices
We had a fresh front‑end developer and a UI designer, no dedicated QA or testing staff. Based on our needs and my experience with front‑end and Node.js, we chose:
Use uni-app to develop the cross‑platform App, allowing future mini‑program extensions.
Use egg.js + MySQL for the backend, fast to develop and sufficient for the niche domain, with a later migration path to midway.js.
Use antd-vue for the admin console, sharing the same stack as uni-app to reduce conversion cost.
Why We Chose uni‑app for the App
Native iOS/Android required separate hires and doubled time and cost, which the boss could not afford. Flutter also required learning or hiring. React‑native/Taro were similar to uni‑app, but uni‑app matched our skill set and gave the fastest delivery.
Why We Chose egg.js for the Backend
Although mature languages like Java, PHP or Go would be technically sound, they were too expensive for the boss. egg.js was familiar, simple, and had a low learning curve for JavaScript developers, meeting the project's cost constraints.
Mid‑Project Turbulence
After delivering the initial App and admin console on schedule, the boss’s operational expectations slowed down. Frequent expert consultations, redesigns, and demands for native or Java rewrites caused constant changes, but the core technical stack remained unchanged.
Additional requests included system upgrades, a mini‑program version, new backend services, instant messaging, and various small features.
Later Technical Adjustments
Adjusted the App packaging scheme.
Introduced midway.js for new business modules, building on the existing egg.js expertise.
Created internal npm packages and a component library.
Standardized code style and development processes.
Hiring and Team Management
Recruitment
Small startups struggle to attract talent with limited salaries, but a unified JavaScript stack allowed developers to work on both front‑end and back‑end, reducing resource waste.
Team Management Practices
Focus on business‑driven goals.
Adopt full‑stack development to avoid coordination bottlenecks.
Define coding standards based on existing habits.
Follow a disciplined workflow: product evaluation → task assignment → technical assessment → development → testing → code review → release → incident tracking.
Measure performance by deadline adherence, documentation, bug count, and careful database changes.
Encourage knowledge sharing, timely feedback, and open communication.
Final Takeaways
Choose a reliable founder; an indecisive boss leads to failure.
Even if a project stalls, a trustworthy leader may succeed elsewhere.
Prioritize revenue; without cash flow a startup cannot survive.
Business problems outrank tooling or coding standards.
Maintain transparent progress reporting and communication.
Every experience brings value and meaning.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Java Backend Technology
Focus on Java-related technologies: SSM, Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading. Occasionally cover DevOps tools like Jenkins, Nexus, Docker, and ELK. Also share technical insights from time to time, committed to Java full-stack development!
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
