Nicholas Chen / Writing / Startup Lessons

10 Lessons from Working at Startups

Nicholas Chen ยท June 2026

Hand-drawn circles labeled PM, engineering, docs, UX, and marketing

Since working at startups, I've been given more opportunities to build user-facing features that are core to the products I've worked on. Throughout these experiences, I've been fortunate enough to learn many valuable insights and have applied them throughout the past year.

I wanted to put all of this into writing because it has helped me a lot these past few months, and I hope it does the same for others. I've compiled my notes, along with my current knowledge, to give you 10 lessons I've learned from my past and current experiences. I hope you enjoy!

1. Be incredibly thoughtful and prioritize high-value work

If there's one thing I've learned, it's that being thoughtful about everything you do and making sure the work actually provides value is extremely important at startups. There is always infinitely more work to be done, and bug fixes and feature requests are endless.

Prioritizing your time and ensuring that the work that gets done is high-value will be 100x more worth it for the product in the long run. A good example is the dark vs. light mode feature many apps have. It seems like a trivial task to implement, but making this change forces everyone to test the product twice, once for each version. This creates more friction in the future, and if you really think about it, this feature doesn't provide much value to most customers.

These are exactly the types of decisions that cause a company to slow down and lose momentum, which is why being thoughtful is so important, especially at earlier-stage companies.

2. Make data-driven product decisions

Everything you do, whether it's related to the product, marketing, or growth, should always be driven by some sort of data metric. This is actually a bit ironic since I previously worked at a company that built AI agents for data analytics, but it took me a while to apply this mindset to the product engineering I was doing.

The habit of asking "what does the data say?" before making a call is one of the most valuable ones you can build. For example, if you're adding generative AI models to your product and the data shows that a certain line of models is consistently being added but rarely used, that's a signal to cut it rather than expand it. Let the data make the decision for you.

3. If no one complains about something, don't change it

As an engineer, I sometimes get the urge to revamp an entire feature or overhaul the UX for a specific part of the product, but this isn't always the best idea. If users aren't complaining about something, it's likely working well enough. Change introduces risk, and unnecessary change introduces unnecessary risk.

Save your energy for the things that actually hurt or annoy users, not the things that just feel like they could be cleaner.

4. Your customers are always number one

When working at smaller companies, you deal with far fewer but far more important customers. These customers are taking a bet on your product and your team. They trust that you'll deliver. You should always be there for them, address concerns right away, and make them feel like they matter.

Losing an early customer at a startup can hurt a lot more than people realize. At an early stage, every customer represents a much larger share of your revenue and credibility. They're often your most honest source of feedback, and treating them as partners rather than just users goes a long way. A customer who feels heard will stick around and advocate for you. One who feels ignored will churn and tell people about it.

5. Marketing is an engineering skill too

Marketing has always been important for both individuals and organizations. Many products actually win on distribution over quality. As an engineer, learning to communicate what you build through writing, social media, or just clear storytelling is a skill that compounds over time.

At startups, everyone wears many hats. You're not just writing code, you're also contributing to the product, the marketing, and sometimes even the content. You might find yourself editing demo videos, writing posts for the company's social media, or helping craft the messaging around a new feature launch. These skills translate more than you'd expect, and being able to do them well makes you a much more valuable person to have on a small team.

6. Study and reference your favorite products

When working on features, it's a good idea to look at existing apps you enjoy and see how they handle similar problems. That said, there's an important caveat: just because a successful app does something a certain way doesn't mean it's the right way, or the right way for your product.

A funny example of this is GitHub's home page. For most developers, it's almost entirely useless. It's cluttered with suggested repositories, activity feeds, and content that nobody really asked for. Yet GitHub is one of the most successful developer tools ever built. It's always a good idea to think holistically and do your research before jumping to solutions, even when the problem seems trivial.

7. Don't let the chaos get to you

Startups are fast-paced, and things will go wrong. Deadlines shift, you might break production once or many times, and priorities can change overnight. Learning to manage stress effectively, staying calm under pressure, and not letting the chaos affect the quality of your work is one of the most underrated skills you can develop in my opinion.

It's not just good for your output; it's good for the people around you. Stress is inevitable at a startup, but how you handle it is a choice.

8. Thoughtful communication is key

This is an extremely important concept I've learned most recently: communicate effectively, but only when it's beneficial to the team. I've learned that it's so important to be clear, concise, and intentional with communication.

At a startup, everyone is busy and juggling multiple things at once. It's easy for context to get lost, decisions to go undocumented, and people to fall out of sync. Over-communicating can create noise, and under-communicating creates confusion. The goal is signal, not volume. Whether it's a Slack message, a PR description, or a product update, everything should count.

9. Start with primitives first, then add complexity

I learned this the hard way, but when building features or writing code, start as simple as possible. Resist the urge to over-engineer from the start. Get the core thing working, validate that it's right, and then add in more complexity if needed.

Premature complexity is one of the fastest ways to accumulate technical debt and slow the team down.

10. Being a culture fit is important

Technical skills can get you in the door, but culture fit is becoming more and more important, and it's also what makes the day-to-day actually enjoyable. There were times where I felt like I didn't quite fit in and assumed it would come naturally over time. But it doesn't just happen on its own. You have to be intentional about it, put in the time, and make the effort to get to know the people around you.

Small things like grabbing lunch with a teammate or jumping into a conversation you'd normally stay quiet in go a long way. It also goes both ways: finding a team whose values resonate with you will make you a better engineer, a better collaborator, and honestly, a happier person.