What Tech Stack Should a Small Startup Choose? Real‑World Lessons
A former developer recounts joining a tiny startup in 2022, detailing the initial tech stack choices, the challenges faced during development, subsequent adjustments, hiring struggles, and practical advice for avoiding common pitfalls in early‑stage companies.
Background
In June 2022 I joined a very small startup whose founder lacked technical and managerial experience, relying on enthusiasm and industry knowledge to launch a logistics‑focused business that eventually dissolved due to financial difficulties.
The founder demanded rapid cost reduction and a fast‑to‑market Android + iOS app.
Initial Technology Selection
The team consisted of myself, a fresh front‑end developer, and a UI designer, with no dedicated QA or operations staff.
Based on the product needs and my experience with front‑end and Node.js, we chose:
Use uni-app for cross‑platform app development, enabling future mini‑program support.
Use egg.js + MySQL for the back‑end, offering quick development and sufficient performance for a niche market, with a later migration path to midway.js.
Use antd-vue for the admin dashboard, keeping the stack consistent with uni-app and reducing conversion costs.
Thus the initial stack was egg.js + MySQL + uni-app + antd-vue to build two apps and an admin panel quickly.
Choosing the App Development Approach
We evaluated several options:
Native iOS/Android development required hiring separate teams and was too costly.
Flutter required learning from scratch or hiring, offering only modest benefits.
React‑Native/Taro and uni-app were similar; given our familiarity and speed, we selected uni-app.
Why We Picked egg.js for the Back‑End
Cost was the primary driver; egg.js met all functional requirements with low learning curve for JavaScript developers, making it easy for new members to contribute.
More heavyweight solutions like Java, PHP, or Go were technically sound but financially unreasonable for the founder. egg.js allowed rapid development and simple onboarding for developers with basic JavaScript skills.
Mid‑Project Turbulence
Initial development proceeded smoothly, but the founder’s expectations for rapid operation and profit were unrealistic, leading to frequent product, UI, and requirement changes.
The founder consulted unrelated experts, causing constant revisions.
New product managers overhauled existing designs.
A part‑time leader insisted on hiring native and Java developers without clear justification.
Despite the chaos, the core technical decisions remained unchanged, and additional features such as version upgrades, mini‑programs, instant messaging, and other small enhancements were added.
Later Technical Adjustments
Modified the app packaging process.
Introduced midway.js for new business modules, leveraging the existing egg.js expertise.
Managed shared internal npm packages and built a component library.
Standardized code style and development workflow.
Recruitment and Team Management
Recruitment
Hiring for a small startup is difficult, especially with limited salary budgets. Our unified JavaScript‑centric stack allowed developers to work across front‑end and back‑end, reducing the need for specialized hires.
Team Management
Key practices for small teams include:
Focus on business‑driven goals and be pragmatic.
Adopt full‑stack development to avoid resource waste.
Define coding standards aligned with developers’ habits.
Follow a clear workflow: product evaluation → task assignment → technical assessment → development → testing → code review → deployment → post‑release monitoring.
Measure performance by deadline adherence, documentation quality, bug count, and careful database changes.
Encourage knowledge sharing, timely feedback, and open communication.
Final Takeaways and Startup Pitfall Avoidance
Ensure the founder is reliable and decisive; otherwise, projects are unlikely to succeed.
A trustworthy founder can still create value even if a specific project fails.
Prioritize revenue generation; without cash flow, survival is doubtful.
Focus on solving core business problems first; technology choices can be refined later.
Maintain transparent progress reporting and communication with leadership.
Extract learning from every experience; each step adds 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 High-Performance Architecture
Sharing Java development articles and resources, including SSM architecture and the Spring ecosystem (Spring Boot, Spring Cloud, MyBatis, Dubbo, Docker), Zookeeper, Redis, architecture design, microservices, message queues, Git, etc.
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.
