Skip to main content

Command Palette

Search for a command to run...

Things You Learn When You Start Working in a Team as a Software Engineer

Updated
3 min read

Working in a team as a software engineer is a completely different experience from coding alone. Collaboration introduces new challenges and forces you to adopt better habits. Here are some key lessons you’ll quickly learn when you join a team.

1. Usage and Handling of Translations

If your application supports multiple languages, you’ll need to handle translations properly. This includes:

  • Using localization libraries instead of hardcoding text.

  • Structuring translation files in a scalable way.

  • Making sure dynamic content is translatable.

  • Understanding how to work with translators and manage updates.

2. How to Use Git Correctly (MRs, Comments, Branching Strategy)

Git is more than just git push and git pull. In a team, you must follow best practices:

  • Writing clear commit messages.

  • Creating meaningful merge requests (MRs) with proper descriptions.

  • Reviewing code constructively and leaving useful comments.

  • Understanding different branching strategies (e.g., Git Flow, trunk-based development).

3. Reusability of Code in the Right Way

Reusable code is essential, but knowing when and how to abstract functionality is just as important:

  • Avoiding premature abstraction—sometimes duplication is better.

  • Writing modular and composable functions/components.

  • Following the DRY (Don't Repeat Yourself) principle while balancing readability and maintainability.

4. Writing Code for Others, Not Just Yourself

When working in a team, your code needs to be readable and maintainable for others. That means:

  • Writing clear variable and function names.

  • Adding comments where necessary (but not over-commenting obvious logic).

  • Keeping functions short and single-responsibility.

  • Using consistent formatting and linting rules.

5. Importance of Documentation

Good documentation is key to team efficiency. You’ll learn to:

  • Write useful README files.

  • Document APIs clearly for frontend and backend teams.

  • Keep documentation up to date as the code evolves.

6. Communicating and Collaborating Effectively

Technical skills matter, but communication is just as crucial. You’ll need to:

  • Ask for help when stuck instead of spinning wheels for too long.

  • Communicate progress and blockers clearly in standups.

  • Give and receive feedback without taking it personally.

  • Align with team members on expectations and coding standards.

7. Code Reviews Are Learning Opportunities

Code reviews aren’t just about catching bugs—they’re also a great way to learn:

  • Understanding different perspectives and approaches.

  • Learning about new libraries, patterns, and best practices.

  • Improving your ability to explain and defend your code choices.

8. Handling Technical Debt

Teams make trade-offs between speed and quality. You’ll learn to:

  • Recognize when shortcuts are acceptable.

  • Plan for refactoring and addressing tech debt proactively.

  • Document tech debt so future engineers understand its context.

9. Working with CI/CD Pipelines

Continuous Integration and Deployment (CI/CD) is a must in modern development:

  • Understanding automated testing and ensuring your code doesn’t break the pipeline.

  • Debugging failed builds and flaky tests.

  • Following best practices for writing tests and maintaining a stable pipeline.

10. Estimating Tasks and Managing Time

You’ll quickly learn that estimating software tasks is hard. Over time, you’ll improve by:

  • Breaking down tasks into smaller, manageable chunks.

  • Accounting for testing, reviews, and unforeseen blockers.

  • Communicating when estimates need to change.

Conclusion

Working in a team teaches you more than just coding—it sharpens your communication, collaboration, and problem-solving skills. These lessons not only make you a better engineer but also help you integrate smoothly into any professional environment. What was your biggest learning moment when you started working in a team?

More from this blog

Ameet Madan's blog

47 posts

Things You Learn When You Start Working in a Team as a Software Engineer