I'm a junior backend developer at my first job, and I'm facing a dilemma. Our backend team has been tasked with building an API, and we need to integrate a map feature. My senior developer prefers to use free map APIs instead of paid options like Google's Map API. I've done some research and found several free public APIs, but they come with rate limits. While I think using a paid API or hosting our own service would provide better performance for real users, I'm questioning if that's the right approach. I'm curious about how other companies handle similar situations and the reasons behind their decisions. Any insights would be appreciated!
5 Answers
If your project's constructed well, swapping out APIs later shouldn't be too complicated. Starting with a free service makes sense if you're unsure about user demand for a paid one. Just make your concerns heard and follow through with what management decides. If you feel out of alignment with the company's direction, maybe look for another job down the road.
You should consider that many factors can lead to rejecting a paid API, including financial implications and business strategy. If the product can't be profitable using something like Google Maps, then they have a valid reason for their decision. You're unlikely to see all the details behind these choices, so it's best to adapt your work to their guidelines and focus on learning and growing in your role.
That makes sense. I guess I'll try to understand more about the business side of these decisions.
It's definitely tough when you're working with limited resources. Just do your best with what's available and make sure to document how those constraints might affect the final product. This way, when you face issues later, you can explain why it happened.
I get that! It's frustrating to commit to free resources and then find out they just don't work as needed. Just be upfront if things start breaking when you test.
Have you checked out OpenStreetMap? It could work for your needs without requiring ongoing costs. There are also old mapping datasets on CDs that could be helpful if your project can manage with simpler datasets without needing constant updates.
You, as a junior engineer, shouldn't dwell too much on these decisions. It's the business and higher management that make these calls based on the bigger picture. Your job is to complete your tasks as instructed and learn. If there's an issue, it's up to them to handle it based on their business strategy, not yours.
That's a solid point, I appreciate the perspective!
Thanks for that advice! I’m focusing on making the code adaptable for future changes.