Boluwatife Aduloju
3 min readMar 11, 2024

--

The Right Way To Approach Software Engineering..

After few years in building visually appealing product and functional web application , I realized what truly matters to make impact as a Software Engineer irrespective of the specialization, whether for a Frontend Engineer, Backend Engineer, Devops Engineer, Mobile Engineer..etc, because their goal at the end is quite the same.

And this understanding is the core of the software engineering approach I will be discussing shortly.

Now, generally it is believed that once software engineering is discussed all it entails is “programming” or “coding” which is right but not absolutely correct because, though software engineering makes use of programming language in developing and maintaining software applications but yet it is not isolated from the process of solving problem in fact, that is the purpose of software engineering; to build software application that provides solution to a problem either in the health industry, financial industry.. etc.

So that means , beyond writing codes as a software engineer, you should be more problem oriented, one who is passionate about solving business problem and helping users meet their needs, by these you tend to ship valuable product and make great impact as an engineer.

In order to provide scalable, effective, and user-friendly solutions, business problems must be solved by combining technological expertise with a thorough understanding of business requirements. As a frontend engineer, I usually tackle business problem solving in this way:

Knowing the needs: To begin with, I make sure I comprehend the needs or the business challenge. To gather needs, expectations, and restrictions, this entails engaging with stakeholders, including product managers, designers, and other team members.
User-Centric Design: I give the end user’s needs first priority when creating solutions. This involves designing user interfaces that are simple to use and comprehend. To make sure that the frontend solution meets the needs and pain points of the target audience, user experience (UX) considerations are essential.
Selecting the Correct Technologies: I select frontend technologies and frameworks that are best suited for the project based on the needs. Depending on the size, complexity, and performance needs of the project, this may entail using conventional HTML, CSS, and JavaScript, or more recent libraries like React, Angular, or Vue.js.

Efficiency and Performance: Effective solutions are frequently needed for business difficulties. In order to ensure quick loading times, fluid animations, and responsive design across a range of screens and devices, I optimize the frontend code for performance. Performance is enhanced by methods including code splitting, lazy loading, and reducing network queries.

Collaboration and Communication: As a frontend engineer, you must work closely with backend engineers, designers, and QA testers to solve business problems. Having good communication makes sure that everyone is aware of the project.

Testing and Quality Assurance: I conduct thorough testing of the frontend code to identify and fix any bugs or issues before deployment. This includes unit testing, integration testing, and end-to-end testing to ensure that the frontend solution works as expected and meets the business requirements.

Scalability and Maintainability: Scalability and maintainability are essential considerations when solving business problems. I design the frontend architecture in a way that allows for easy scalability as the project grows and evolves. Additionally, I write clean, modular, and well-documented code that is easy to maintain and refactor as needed.

Continuous Improvement: Finally, I continuously seek feedback and iterate on the frontend solution to improve its effectiveness and address any emerging business needs or challenges. This involves staying up-to-date with the latest frontend technologies, best practices, and industry trends.

By following these Approach, I strive to provide effective frontend solutions that address business problems and contribute to the overall success of the project, though I focused more on frontend engineering as an example but the core approach is thinking the business problem first before engineering.

--

--