Throughout all of this, I did a bit of boy scouting along Myself and future developers that it was behaving as expected. Included in the database migrations, I isolated the logic into a service class and added ample test coverage to convince The behavior of this feed wasīased on a set of queries that spanned the majority of the data model, so after verifying that the necessary indexes were This left the user feed management as the final item to be completed before launch. Tagging support required a minor extension to the APIs but was otherwise a fairly "bread and butter" feature for the New API endpoints and triggering an email to notify the system admin mailing list of any spam reports. I then reused this functionality for the spam reporting by exposing a few SendGrid to enable email delivery capabilities. I was able to knock out the password reset feature by leveraging the existing support within the Devise gem, customizingĪll account management emails to match the appropriate styling and copy for the system, and integrating the system with Project aligned on the remaining work to be done, allowing us to move more quickly and confidently toward its completion. This initial documentation got everyone involved in the Of the time I estimated would be needed to complete each feature. In addition to identifying the tasks required to complete each feature, I also called outĪny open questions pertaining to the requested capabilities, highlighted the design decisions or tradeoffs to beĬonsidered, identified the areas of technical debt I came across in my initial review, and provided a detailed breakdown I quickly got ramped up on the current state of the system and provided a detailed proposal for how I planned to completeĮach of the requested features. While there was APIĭocumentation maintained in Apiary, it was out of date or incomplete in parts and the README for the app had been left Secondly, there was no automated test coverage across the entire service. Firstly, the APIs were implemented in a single file, resulting in poor organization and making themĬhallenging to maintain. For the most part it was in reasonably good shape but did have a few noticeable areas of It used Devise for user authentication and The existing application was built on Rails, with a Grape-driven JSON API. This included the following capabilities: As such, I inheritedĪn existing Rails backend service and was asked to extend it to complete the remaining features targeted for the launch This project was started by the team at Futurehaus and I was asked to join very late in the development of the initial MVP version of the system. Javier Otero, CEO at Futurehaus ( source)
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |