<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Ogagaoghene Emmanuel Esavwede</title>
    <description>The latest articles on Forem by Ogagaoghene Emmanuel Esavwede (@ogagadottech).</description>
    <link>https://forem.com/ogagadottech</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F672195%2F09726e8c-6d3a-4462-830d-eb80c2c702b8.png</url>
      <title>Forem: Ogagaoghene Emmanuel Esavwede</title>
      <link>https://forem.com/ogagadottech</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/ogagadottech"/>
    <language>en</language>
    <item>
      <title>I'm Going a Build Spree !</title>
      <dc:creator>Ogagaoghene Emmanuel Esavwede</dc:creator>
      <pubDate>Fri, 26 Sep 2025 11:41:29 +0000</pubDate>
      <link>https://forem.com/ogagadottech/im-going-a-build-spree--4m19</link>
      <guid>https://forem.com/ogagadottech/im-going-a-build-spree--4m19</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvdvnwzgohxq75uwwksk.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvdvnwzgohxq75uwwksk.gif" alt=" " width="500" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'll be building &lt;strong&gt;4 backend products&lt;/strong&gt; in &lt;strong&gt;Edtech, E-commerce, Chatting, and Saas&lt;/strong&gt;. &lt;/p&gt;




&lt;h2&gt;
  
  
  Why?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3obdb206eip542z1hov.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg3obdb206eip542z1hov.gif" alt=" " width="600" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I enjoy creating stuff, imagining something in my head and bringing it to life, I mean how awesome is that.  &lt;/p&gt;

&lt;p&gt;And that's exactly what I'm doing in my build spree: &lt;strong&gt;imagine → build → deploy&lt;/strong&gt;.  &lt;/p&gt;




&lt;h2&gt;
  
  
  Re-evaluating my approach
&lt;/h2&gt;

&lt;p&gt;The first thing I've done in my build spree is &lt;strong&gt;re-evaluating my entire approach to building product backends&lt;/strong&gt;, because quality software is shipped through quality processes and pipelines.  &lt;/p&gt;

&lt;p&gt;For me the two major pipelines when I build software are:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The project pipeline&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The code pipeline&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Project Pipeline
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmg9o26301nd0an6n8tq6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmg9o26301nd0an6n8tq6.jpg" alt=" " width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Setting out to build anything is basically embarking on a project, whether project management techniques are practiced or not.  &lt;/p&gt;

&lt;p&gt;Typically, when I build projects, I just do really light project management, basically using a simple Kanban board to keep track of everything I have to do, moving my tasks from Todo to Done, that's it. And it does work for me.  &lt;/p&gt;

&lt;p&gt;But when working on big projects keeping up with the big picture and ensuring the expected result is delivered can be challenging.  &lt;/p&gt;

&lt;p&gt;I mean, it’s not just about moving tasks across a board, it’s about aligning effort with goals, breaking work down into achievable milestones, tracking dependencies, and constantly making sure that the project is still heading in the right direction.  &lt;/p&gt;

&lt;p&gt;Without a structured approach, it’s easy to get lost in day-to-day tasks while losing sight of deadlines, priorities, and overall quality. All these complexities can be really complex to manage with just a simple Kanban board.  &lt;/p&gt;

&lt;p&gt;So, to improve my project pipeline, I'll be following the &lt;strong&gt;Agile project methodology&lt;/strong&gt; using &lt;strong&gt;Jira&lt;/strong&gt; to manage each of the backend products in the build spree.  &lt;/p&gt;

&lt;p&gt;I'll be using &lt;strong&gt;Epics, User Stories, tasks, and subtasks&lt;/strong&gt; to break the project into manageable chunks. And &lt;strong&gt;sprints&lt;/strong&gt; to prioritize features and track time.  &lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F72wktive5brsm8jreqgz.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F72wktive5brsm8jreqgz.gif" alt=" " width="500" height="281"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code Pipeline
&lt;/h2&gt;

&lt;p&gt;With quality pipelines and systems in place, you can confidently develop and add features to your product with confidence because different checks have been put in place to ensure quality software is delivered checks like: linting, tests, security checks etc.  &lt;/p&gt;

&lt;p&gt;The benefit of having a well-defined structured approach is it helps you ship quality software consistently, as everything passes through a well thought pipeline that ensures quality.  &lt;/p&gt;




&lt;h3&gt;
  
  
  My process will be:
&lt;/h3&gt;

&lt;h4&gt;
  
  
  1. Design
&lt;/h4&gt;

&lt;p&gt;Each feature will be designed before implementing. Sometimes the best design is obvious from the start, sometimes it's not. When it's not, I'll come up with multiple designs and pick the most suitable.  &lt;/p&gt;

&lt;p&gt;Design before implementing will allow me push not just something that works, but something that works well.  &lt;/p&gt;

&lt;h4&gt;
  
  
  2. Develop
&lt;/h4&gt;

&lt;p&gt;This is where I'll write code to implement features. The code must have these qualities: &lt;strong&gt;secure, scalable, maintainable, reliable, and performant&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;The code I write will automatically be analyzed by &lt;strong&gt;linters&lt;/strong&gt; to ensure code quality.  &lt;/p&gt;

&lt;h4&gt;
  
  
  3. Test
&lt;/h4&gt;

&lt;p&gt;After a feature has been implemented, I'll test it with robust test cases to confirm reliability.  &lt;/p&gt;

&lt;p&gt;Different types of tests will be run like: performance, e2e tests, security tests, etc.  &lt;/p&gt;

&lt;p&gt;These tests will validate that the software works as expected.  &lt;/p&gt;

&lt;h4&gt;
  
  
  4. Document
&lt;/h4&gt;

&lt;p&gt;Once a feature is complete, it will be documented. This ensures maintainability of the software at any point in time.  &lt;/p&gt;

&lt;h4&gt;
  
  
  5. Deploy
&lt;/h4&gt;

&lt;p&gt;At this point the software is in view to be pushed to production but not just yet.  &lt;/p&gt;

&lt;p&gt;Before the software is shipped to production it will first pass through a &lt;strong&gt;CI/CD pipeline&lt;/strong&gt; with the following checks:  &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Code quality checks&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Type checking
&lt;/li&gt;
&lt;li&gt;Linting
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Tests&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unit
&lt;/li&gt;
&lt;li&gt;Integration
&lt;/li&gt;
&lt;li&gt;e2e
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Security scans&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Static application scanning
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Build&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Build application for production deployment
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Deploy&lt;/strong&gt;  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Monitor&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Error Tracking
&lt;/li&gt;
&lt;li&gt;Performance
&lt;/li&gt;
&lt;li&gt;Analytics
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;With this in place, I can sit back, sip coffee and watch my users happy.  &lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyzaof79aud8iczmd94bv.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyzaof79aud8iczmd94bv.gif" alt=" " width="480" height="302"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Backend products I'll be building
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;An &lt;strong&gt;ecommerce platform&lt;/strong&gt; where people can find and purchase products
&lt;/li&gt;
&lt;li&gt;An &lt;strong&gt;edtech platform&lt;/strong&gt; for learners and instructors
&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;social media chatting app&lt;/strong&gt; with live chat feature
&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;Saas platform&lt;/strong&gt; where users can get items delivered to them by connecting with people already coming their direction
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Technologies I'll be using
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Languages/Frameworks&lt;/strong&gt;: TypeScript, Node.js, Express, Jest&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database&lt;/strong&gt;: MongoDB, Mongoose&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cache&lt;/strong&gt;: Redis&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Queues&lt;/strong&gt;: Rabbit MQ&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Realtime&lt;/strong&gt;: Socket.IO&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Infra&lt;/strong&gt;: Docker, NGINX, Kubernetes&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Architecture
&lt;/h2&gt;

&lt;p&gt;I'll be going with the &lt;strong&gt;monolithic architecture&lt;/strong&gt; to start with for all the backends — nothing fancy yet (modular monoliths or microservices), as that would be an overkill.  &lt;/p&gt;

&lt;p&gt;The goal is simply to have working and reliable production-grade backends.  &lt;/p&gt;




&lt;h2&gt;
  
  
  First project
&lt;/h2&gt;

&lt;p&gt;So in no particular order, I'll be starting with the &lt;strong&gt;social media chatting app&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;I'll constantly be sharing my progress here and across my social media channels:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/ogaga-esavwede-68a09a18a/" rel="noopener noreferrer"&gt;linkedin&lt;/a&gt; | &lt;a href="https://x.com/ogagaDotTech" rel="noopener noreferrer"&gt;twitter&lt;/a&gt; | &lt;a href="https://www.youtube.com/@ogagaDotTech" rel="noopener noreferrer"&gt;youtube&lt;/a&gt; | &lt;a href="https://medium.com/@ogagaDotTech" rel="noopener noreferrer"&gt;medium&lt;/a&gt; | &lt;a href="https://hashnode.com/@EmmanuelEO" rel="noopener noreferrer"&gt;hashnode&lt;/a&gt; | &lt;a href="https://www.instagram.com/ogaga.tech/" rel="noopener noreferrer"&gt;instagram&lt;/a&gt; | &lt;a href="https://www.tiktok.com/@ogagadottech" rel="noopener noreferrer"&gt;tiktok&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Alright, let's get started 🚀&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9sbb0m0k9ertusdnw4aj.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9sbb0m0k9ertusdnw4aj.gif" alt=" " width="500" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>backend</category>
      <category>webdev</category>
      <category>programming</category>
      <category>developer</category>
    </item>
    <item>
      <title>My 8 tips on Becoming A Better Developer /Programmer</title>
      <dc:creator>Ogagaoghene Emmanuel Esavwede</dc:creator>
      <pubDate>Sun, 21 Nov 2021 11:45:49 +0000</pubDate>
      <link>https://forem.com/ogagadottech/my-7-tips-on-becoming-a-better-developer-programmer-4h1b</link>
      <guid>https://forem.com/ogagadottech/my-7-tips-on-becoming-a-better-developer-programmer-4h1b</guid>
      <description>&lt;p&gt;So I've been wanting to write a post here for a while and I've been thing of the perfect article to write but could not come up with anything. Well at least I could post something useful for new and beginner developers. This points simply reflects my views based on my experience and observation. &lt;/p&gt;

&lt;p&gt;So in this little article are the things new programmers can do to improve their programming skills.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Practice &lt;br&gt;
       When we practice and consistency works wonders, regardless of the area or field. Think of great footballers like messi and ronaldo, they put in years of practice into their craft and are now world class. So also it is with programming and development. The more we code, the more we get better at coding.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Take things step by step&lt;br&gt;
       Sometimes as a new programmer or developer, we can't just wait to build something awesome and show the world. It takes time and dedication to become an excellent. Take your time to learn every concept to the full and apply what you have learnt &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;work on little projects&lt;br&gt;
       Working on little projects helps us practice what we learnt and it also pushes us to learn more because most times when we're working on projects we won't know how to implement everything. So when we meet something new along the line, we go and research on the topic and learn more; there by improving our knowledge and skills.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;meet other developers&lt;br&gt;
      This is one of the best advice you can ever get as a developer. Why should a farmer leave among accountants, can he easily borrow a cutlass from an accountant when his cutlass gets bad, will the accountant know the best advice to give when the farmers crops are not growing well, will the accountant know the latest news that the farmer would be interested in. Here the simple point I am trying to make is a journey is best taken with people of your kind; as they will be enough support on the way. You need to meet other developers and share knowledge and ideas together. Being a programmer or developer does not mean being alone or isolated. When you meet other programmers and developers, you'll learn things you never knew you never knew. There's always and endless flow of ideas to share with each other.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Be curious and exited&lt;br&gt;
         People succeed in what they love doing. When you're exited about programming you'll find yourself playing with tools and programming languages and you'll easily learn things. Your interest will serve as fuel to propel you to great heights &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Be patient &lt;br&gt;
    Take things step by step and stop wanting to finish everything quick. Focus and enjoy the process, the result will certainly come.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Be productive&lt;br&gt;
     Build things and solve problems. Your skills will be improved and you'll get a lot of experience on the as you work on stuffs. You'll also get to meet other like minded people and who knows you all could build a great startup that solves peoples problem.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Find A Balance&lt;br&gt;
     Always find time to do other things and have fun. It is necessary for our well being.&lt;/p&gt;

&lt;p&gt;So this is my view on becoming a better programmer. I hoped you loved it and feel free to comment and if there are any suggestions or corrections I'll be happy to learn. &lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>programming</category>
      <category>html</category>
    </item>
  </channel>
</rss>
