StartupsJul 10, 2019

Approaching a greenfield project: API Design vs System Design?

Hey Guys, I’ve been pondering an idea for a new company. I have never worked in a greenfield project. So much of my experience has been in working on existing systems and perhaps adding functionality with new services etc. The domain area I don’t have much experience so I have been doing a lot of research of what exactly it entails to take on this project. However I do have some solid idea on what the core feature set for the end consumer is. I want to start brainstorming the different components of the services that need to be built, etc. However it almost seems that it would be a good idea to design the API and API contracts for the current feature set I have in mind, and then start brainstorming how I can build it using micro-services. For those with more experience building big projects from scratch. Any insights on where do you start, how you break your brainstorming into chunks to not become overwhelmed, etc. Thank you so much for any input here.

Add a comment
Veritas dogyear Jul 10, 2019

Micro services ? How big is this project?

Goldman Sachs jODQ84 OP Jul 10, 2019

to be honest can be a well structured monolith to start and then slowly decoupled as user base grows. I am just interested in seeing how other people usually approach this.

Microsoft bdtc Jul 10, 2019

Start with defining your nouns (data) and then your verbs (operations) and then you can start thinking about the interactions.

GoDaddy Ofj47e Jul 10, 2019

Start with api design. In fact, I argue starting from he front end since you'll have an immediate consumer of the api AND your api input/outputs will actually be relevant