Guidelines for Managing Software Developers in a Team From a Core Developer Perspective

Mohammadreza Ashouri
2 min readDec 5, 2024

--

Managing a team of software developers can be challenging, especially for startups still finding their rhythm and hiring developers quickly. One of the biggest struggles I have faced as a founding engineer, architecture designer, and product manager was ensuring that new developers quickly adapted to the team’s workflow and contributed effectively without causing disruptions. To help navigate these challenges, I’ve put together a set of guidelines based on my own experience that can help streamline the development process and foster collaboration within the team. I will share it compactly with you, so I hope you find it useful :)Development Guidelines

Branch & PR Management:

- Always create a new feature branch from the latest deploy branch

- Use descriptive branch names (e.g., feature/xyz-component)

- Keep branches focused on single features/fixes

Pull Request Requirements:

- Create detailed PRs with clear descriptions

- List all major changes and their impact

- Add screenshots/examples when relevant

- Request reviews from appropriate team members

Testing and Documentation:

- Write unit tests for all new functions

- Add clear function comments

- Maintain Existing Codebase:

- Avoid modifying existing functionality

- Add features without changing core logic

- Document any necessary changes to existing code

New Feature Implementation:

- Implement new features as separate services when possible

- Use microservice architecture for independent features

Dependency Management:

- Don’t update dependencies unless absolutely necessary

- Test thoroughly if dependencies must be updated

- Document any dependency changes and their impact

- Create separate PRs for dependency updates

Why do These Guidelines Matter?

I wrote this guideline based on my own experience working for large corporations and small startups as a founding engineer, architecture designer, and product manager. I made this guideline to create a consistent workflow that helps both new and existing devs work effectively. By following these practices, teams can reduce confusion, minimize errors, and maintain high code quality. It also helps to form a development process that is more predictable and scalable, which is important for startups looking to grow quickly and onboarding new members.

--

--

Mohammadreza Ashouri
Mohammadreza Ashouri

Written by Mohammadreza Ashouri

Mo has a Ph.D. in Compter Science. Mo specializes in Backend Programming and Security.

No responses yet