Technology – EngineerBabu Blog https://engineerbabu.com/blog Hire Dedicated Virtual Employee in Any domain; Start at $1000 - $2999/month ( Content, Design, Marketing, Engineering, Managers, QA ) Fri, 08 Jan 2021 12:51:05 +0000 en-US hourly 1 https://wordpress.org/?v=5.5.11 Roles and Responsibilities that every Business Analyst must know https://engineerbabu.com/blog/business-analyst-role-and-responsibilities/?utm_source=rss&utm_medium=rss&utm_campaign=business-analyst-role-and-responsibilities https://engineerbabu.com/blog/business-analyst-role-and-responsibilities/#boombox_comments Fri, 23 Aug 2019 12:55:58 +0000 https://www.engineerbabu.com/blog/?p=13182 What is a Business Analyst? If you aren’t a millennial working in IT, it is quite possible that you may not be familiar with the term, “Business Analyst.“ But there are plenty of reasons why you should be. Business analysis has emerged as a core business practice since the dawn of the 21st century. Although...

The post Roles and Responsibilities that every Business Analyst must know appeared first on EngineerBabu Blog.

]]>
What is a Business Analyst?

If you aren’t a millennial working in IT, it is quite possible that you may not be familiar with the term, “Business Analyst.

But there are plenty of reasons why you should be.

Business analysis has emerged as a core business practice since the dawn of the 21st century. Although every business domain has some business analyst jobs; IT especially has witnessed an explosion of career opportunities for business analyst profiles.

So, why has BA swiftly rose to prominence, and why are they being offered such lucrative salary packages?

This is primarily because they serve as a vital link between a firm’s information technology capabilities and their business objectives. Skilled business analysts directly contribute to the profitability of companies, large or small.

Now, before delving into the business analyst’s key roles and responsibilities and what it takes to become a Business Analyst, let’s dig a little deeper into what precisely does a Business Analyst do.


What is the Role of a Business Analyst?

In today’s complex business environment, an organization’s adaptability, agility, and ability to manage constant disruption through innovation can be an important element to ensure success. Traditional approaches may no longer suffice in reaching objectives when economic conditions are unfavorable.

That’s where the business analyst role comes in. Businesses achieve goals through projects that translate customer needs into new products, services, and profits. Business analysts can make that happen rather efficiently & effectively.

A business analyst’s primary objective is helping businesses cost-effectively implement technology solutions by precisely determining the requirements of a project or a program, and communicating them clearly to the key stakeholders.

Business analysts usually collect and interpret data from many areas within an organization, simultaneously improving the business processes and finding solutions to business problems with all that gathered data.

Pre-Requisites

  • BAs typically require knowledge of statistics, and statistical softwares such as R. Companies prefer a BA who also possesses relevant SQL skills.
  • The education and training requirements, although, may vary for business by – employer, specific role, and industry.
  • It is possible to enter into the field with just a two-year degree and relevant work experience, but most employers would require at least a bachelor’s degree.
  • Business analysts should be able to create solutions to problems for the business as a whole, and accordingly must effectively be able to communicate with a variety of business areas. Thus communication skills are another major prerequisite.
  • BAs should be able to understand the business needs of customers and should be able to translate them into the application and operational requirements with the help of solid analytical and product management skills.

NOTE: As mentioned, SQL knowledge is a much sought-after skill for business analysts. SQL is a key language utilized for managing data held in RDBMS or relational database systems. Business analysts might not require the same level of SQL knowledge as, say, an analyst would, but a basic understanding of its concept, capabilities and basic functions is essential.


The Job of a Business Analyst:

  • Documenting and translating customer business functions and processes.
  • Warranting the system design is perfect as per the needs of the customer.
  • Participating in functionality testing and user acceptance testing of the new system
  • Helping technically in training and coaching professional and technical staff.
  • Developing a training program and conducting formal training sessions covering designated systems module.
  • Acting as a team-lead on assigned projects and assignments; and providing work direction to the developers and other project stakeholders.

Responsibilities Of A Business Analyst

Let’s take a look at the business analyst responsibilities and duties based on the different project phases.

  1. Understanding the Requirements of the Business

Understanding the intricacies of a project is very crucial for BAs. A fundamental responsibility of a Business Analyst is to work in accordance with relevant project stakeholders to understand their requirements and translate them into details, which the developers can comprehend.

The key skillset required for this part of the process is the capability of the Analysts to filter the different messages as well as the requirements of the project stakeholders or consumers into a consistent, but, – single vision.

Thus, a business analyst devotes a large chunk of time, asking questions. They may even need to conduct interviews, read, observe and align the developers with their target goal.

They also need to carry out analysis and look for solutions for both, the organization, as well as the customer.

  1. Analyzing Information

The analysis phase is the stage during which a BA reviews the elements in detail, asserting clearly and unambiguously as what the business needs to do in order to achieve its objective.

During this stage, the BA will also require to interact with the development team and the technical architects, to design the layout and define accurately what the solution should look like.

A Business Analyst then plots the scope and initial requirement of the project. The fundamental goal for any BA is to obtain the project concentrated early by converting the initial high-level goal into a tangible realistic one.

  1. Communicating With a Broad Range Of People

For Businesses, it is of paramount importance to create, as well as deliver quality presentations on topics like business requirements, application designs, as well as project status. Good Business Analysts need to dedicate countless hours actively communicating back and forth. More than just speaking, they need to listen and recognize verbal and non-verbal information.

Generally, people watching the presentation of Business Analysts are senior executives of the organization, as well as key management people of IT. Building an open conversation, validating that you understand what you have heard, and communicating what you have gathered to the stakeholders is extremely important to keep the vehicle operating efficiently.

Therefore, Business Analysts are expected to impress the stakeholders and other authorities with their presentations, which in turn would have a notable effect on the growth of the business.

  1. Documenting the Findings

This is where a BA gets into evaluating the needs and ensuring that the implementation team has gathered comprehensive details they require for creating and implementing the process. This phase involves collaborating with a wide range of stakeholders and consumers across the company to guarantee their needs, as well as knowledge, are combined into a detailed document about what they will actually build.

An effective document is the one that clearly states options for solving particular difficulties and then helps select the best one. There are oftentimes situations where a BA might miss out on a few requirements from the document.

Consequently, the developers won’t be aware of the same which in turn would lead to a considerable loss of time and efforts, as they would be required to redesign the product, this time including the missed part.

Hence, it is extremely critical for any BA to effectively document the findings where each requirement of the client is efficiently mentioned, and nothing is left amiss.

The favored solution is then estimated throughout the layout and planning – to assure that it meets the business requirements.

  1. Evaluating and Implementing the Finest Solution

Ensuring that the systems’ design is up to the mark, as per the needs of the customer is the next decisive step. The most important job of the Business Analyst is to spend time identifying options for solving particular difficulties and then help pick the best one. The preferred solution is then assessed throughout the layout and planning to assure that it meets the business requirements.

The implementation phase, although, is not the final job of Business Analysts. In fact, it could turn out to be the riskiest time for things to go awry and for objectives to be overlooked. It is during this step that a BA should be aware of how clients are utilizing the framework.

Do they clearly see the benefits envisaged in the business case?

In essence, the job of Business Analysts involves the navigation, responsible for reaching the end destination, which implies a satisfying resolution of a business problem. 

The BA must always be aware of what the end-game is, how to get there and should be competent enough of handling course adjustments as they occur.


Wrapping Up…

Witnessing how quickly economic conditions and business needs are changing. You need to prepare yourselves and create a proper plan to stay relevant in this rat race.

Finding success in a business analyst job requires proper planning and commitment to your career. Without planning for your future, you will end up feeling lost on your way. No one can accurately predict how the job market will look like – a few years, or even months for that matter. So it would be in your best interest to prepare yourself by enrolling in business analyst training programs, to acquire the in-demand skills that can help you break into this exciting and prosperous domain.

EngineerBabu boasts a talented bunch of business analysts working to ensure that our customers receive the best quality deliverables. So, if you are looking to expand your horizons and explore this lucrative domain, consider forwarding us your resume.

In case you are looking for a tech partner to make your product dreams a reality, call us for a free consultation. We have a host of award-winning products in our portfolio.

Also, tell us how you felt about this article in the comments below. If there’s anything that you would like for us to know, you can .


Recommended readings for you-

The post Roles and Responsibilities that every Business Analyst must know appeared first on EngineerBabu Blog.

]]>
https://engineerbabu.com/blog/business-analyst-role-and-responsibilities/feed/ 9
Angular Authentication Using JWT https://engineerbabu.com/blog/jwt-authentication/?utm_source=rss&utm_medium=rss&utm_campaign=jwt-authentication https://engineerbabu.com/blog/jwt-authentication/#boombox_comments Fri, 25 Jan 2019 13:14:24 +0000 https://www.engineerbabu.com/blog/?p=13230 Building a web-based product is not just a skill anymore; it’s a necessity, for anything and everything that requires public attention. A decade into the digital revolution, we are finally witnessing a tectonic shift in users’ behavior towards consumer products, wherein a majority of these products are either web-applications or mobile-applications. A web/mobile app is...

The post Angular Authentication Using JWT appeared first on EngineerBabu Blog.

]]>
Building a web-based product is not just a skill anymore; it’s a necessity, for anything and everything that requires public attention.
A decade into the digital revolution, we are finally witnessing a tectonic shift in users’ behavior towards consumer products, wherein a majority of these products are either web-applications or mobile-applications.
A web/mobile app is usually a culmination of many components working in unison. One of the most overlooked, but significant part is user authentication. Believe me, when I say this, 70% of users leave the platform if they aren’t satisfied with the on-boarding experience.
It HAS to be Smooth & Simple.
There are countless tutorials out there exhibiting  code of how authentication in angular works, some even go the extra mile to explain how the code runs, but the only issue with such codes (for rookies) is the flowery words and jargon they use, which can be quite troublesome for someone who is just starting-out in the domain.
The following is a detailed, yet simple guide on how authentication works in angular. The code for the same could be found here. The following code is well commented so that you understand what is actually happening!

This tutorial is not a step by step guide to authentication with angular. The Internet is already swarming with thousands of them, but what’s missing is a detailed explanation of the working of those steps.

How to Authenticate Angular using JWT

It is recommended that you clone the project hereand go through this tutorial while referencing the code. It will give you the clarity you are yearning for…
Before we start with the “coding” section, we need to understand the basic concept behind authentication and JSON Web Tokens (or JWT as millennials call it).
Authentication is a means of verifying the identity of a user, which means if the user is allowed to access the application or not.  The two most prevalent ways a user can get authenticated is either through social login (Google+/Facebook login) or through a registered username (can be an email) and password. We will be using the latter to understand the inner workings of authentication in angular.
Recommended Read: A Detailed Guide to CSS Animations and Transitions
The codebase for this tutorial works on the following components:

  1. JSON Web Token
  2. Client + localStorage
  3. Backend + Secure API Endpoints + DB
  4. Authentication Service
  5. User Service
  6. JWT Interceptor
  7. Auth Guard
  8. Error Interceptor

After understanding the 8 elements mentioned above, you will not only learn about the workings of JWT and authentication but will also be able to appreciate the process behind it.

  1. JSON Web Tokens (JWT)

JSON Web Tokens, if defined abstractly, is a JSON object which helps in exchanging information between two or more parties securely. In layman terms, it’s a type of validation token from the authentication server, which indicates that the username and password supplied by the user at the time of logging in whether it is correct or not, and thus the user is “authenticated”.

Read more about JWT and its intricacies right here.

  1. Client + localStorage

The client here is the user operating on a browser (Google Chrome/Firefox/Opera/Safari). For every registered user, there is a set of username and password stored in the database at the backend.

The two most important types of storage properties of any browser are the localStorage and the sessionStorage; they allow you to store key-value pairs in the browser.

  • localStorage
    It is a persistent storage option when you don’t want the user to be logged out on refresh or closing of a browser tab. The localStorage stores the data without expiration date by default. It is a read-only property.
  • sessionStorage
    As the name indicates, it stores data for a particular session only. It is less persistent, and the user data gets lost on the closing of the browser tab or refreshing.

We will be using localStorage in our case.
NOTE: One can find localStorage in the developer console (F12 on Chrome) under the “Application” tab.
local storage

  1. Backend + Secure API Endpoints + DB

The backend for this tutorial is a fake backend as we just want to understand how things are working on the front-end part. But this backend works as any real backend wherein it has API’s that provide us with a response body and response status. The fake-backend.ts also has test data (DB) for a test user. The credentials input by the user will be validated against this test data.

Test Data:
test dataThe fake-backend will serve as a standalone backend with a delayed response so that it can imitate a real backend. The two major tasks it will perform are:

  1. It will check the user credentials that come from “Authentication Service” during login
  2. It will also work as a fake database keeping the user details (hitting a secure API end-point). The user can request for the user details only when the requests have valid JWT Token in its request authorization header

The two API’s that our current backend has are:

  • To check credentials – /users/authenticate
    If the user credentials match the test user stored data, the backend sends a response body with a JWT token.

fake-backend.ts

API to check credentials

  • To give back user details – /users
    This is a SECURE API endpoint. By secure, it means that to access this API endpoint, the request must have a valid JWT Token with it. This token is in the request header with the “Authorization: Bearer JWT-TOKEN” property.It first checks for a valid JWT token and then it responds accordingly.

fake-backend.ts

API to give back user details

  1. Authentication Service

Authentication Service

Authentication service is used to LOG IN and LOG OUT from the application. It possesses the credentials (username and password) from the client (user/browser) to the backend and checks for the response, if it has JWT token.

If the response from the backend has a JWT token, then the authentication was successful. On successful authentication, the user details are stored in the local storage along with JWT token.

JWT token

  1. User Service

The user service is a service dedicated to hitting the 2nd API (the secure API end-point) to fetch the data for all the users present in the database. Currently, only a single user is present – test user. This User Service is accessed via the home component as soon as the user logs in and the home component is initialized.

  • home.component.ts

home component
The service will get the response from the backend only if the backend receives the request along with a valid JWT token.

  • user.service.ts

user service
The token is not sent when the request by the client is made. Here is when JWT Interceptor comes to rescue!

  1. JWT Interceptor

JWT Interceptor

The JWT interceptor intercepts the incoming requests from the application/user and adds JWT token to the request’s Authorization header, only if the user is logged in (because then the JWT token will be present in the localStorage at client’s end).

The JWT interceptor works very smarty by not modifying the original request made by the user service, but cloning the request and adding the JWT token to the request header and then forwarding the cloned request to the backend. The value of the token is fetched from the client’s localStorage. If the user is logged out, there will be no JWT token in the localStorage, and thus, the user won’t be able to access the secured API endpoint.

jwt.interceptor.tsJWT Interceptor

  1. Auth Guard The Auth Guard works as umm – a Guard!

The auth guard ensures that only authenticated users access specific routes in the application. The auth guard implements an interface called CanActivate with the help of which it returns either true or false.

True If the user is logged in, i.e. the localStorage has current users’ details along with a valid JWT token

False If the user is logged out, i.e. the localStorage lacks the current user details along with a valid JWT token, and in turn, will then redirect the user to the login page.

auth.guard.ts
Auth Guard

In this particular example, we are using the presence of the current user detail as a way to give rights to access one specific route, i.e. ‘/’ (root), or the HomeComponent. There can be other conditions too like role-based authentication. The rights to access particular routes will then be allocated on the basis of the role of a specific user. The user will be able to access the admin route (say) only if he is an admin.
Even though it is developed in a separate file auth.guard.ts, but it is implemented in the routing of the application, with the canActivate parameter.
app.routing.ts
App Routing

  1. Error Interceptor

The HTTP error interceptor works with the calling service and the API’s

It intercepts the responses from the API and checks for the status codes (if there were any errors).

Error Status

  1. 200: Success
  2. 401: Unauthorized Response – the user will be automatically logged out

All other errors are RE-THROWN, to be caught by the calling service so an alert can be displayed by the user service/component on the client’s end.
error.interceptor.ts
Error Interceptor


Wrapping Up

The thing about angular (or any framework) is – The more you work with it, the more you’ll discover what all you don’t know. The lack of knowledge about fundamentals will prove to be a hindrance and in turn, will slow down the development process. This is my effort to make one of the components of a web-app development process, i.e. Authentication – EASY!

We hope you found this post valuable. In case you have any doubts, let us know in the comments below.


Recommended Read:

The post Angular Authentication Using JWT appeared first on EngineerBabu Blog.

]]>
https://engineerbabu.com/blog/jwt-authentication/feed/ 3
The Girl Who Won’t Take No For An Answer https://engineerbabu.com/blog/the-girl-who-wont-take-no-for-an-answer/?utm_source=rss&utm_medium=rss&utm_campaign=the-girl-who-wont-take-no-for-an-answer https://engineerbabu.com/blog/the-girl-who-wont-take-no-for-an-answer/#boombox_comments Thu, 24 Jan 2019 09:33:16 +0000 https://www.engineerbabu.com/blog/?p=13205 Originally Published at SHEROES. Written By Kanika Gautam. The odds were stacked against her, but this ‘entrepreneur in making’ had already decided to script her own success story and won’t stop at any cost, this is how it started: In Garhi Malehara, a small town near Khajuraho, Madhya Pradesh, a girl named Aditi Chaurasia was born. A...

The post The Girl Who Won’t Take No For An Answer appeared first on EngineerBabu Blog.

]]>
Originally Published at SHEROES.
Written By Kanika Gautam.

The odds were stacked against her, but this ‘entrepreneur in making’ had already decided to script her own success story and won’t stop at any cost, this is how it started:
In Garhi Malehara, a small town near Khajuraho, Madhya Pradesh, a girl named Aditi Chaurasia was born. A rebel at heart since her early days, she opted for an English medium Co-Ed school even if it came with a wave of resentment and criticism from relatives and neighbors alike. After finishing school, Aditi tried her luck in medicine, but luck didn’t favor her and she lagged behind by a small margin.

Dreams Taking Shape

With the dawn of 2009 things started looking up for Aditi. She met her then friend, now a business partner and soon to be life partner Mayank. Mayank encouraged her to follow her heart and pursue her entrepreneurial dreams and soon began her first venture – Titliyan Creation, a handmade cards portal.
Unfortunately, despite the tremendous success of her first project she had to give it up when it was at its peak. Success was kissing her feet, yet Aditi had to shut down Titliyan Creation due to certain personal reasons and the butterfly withered back to her cocoon.
Reminiscing about that difficult phase Aditi said,
“I encountered the typical Indian mentality of our society. If I was not doing a job or getting married then my life was not on the right path.”

Saying NO to NO

Feeling stonewalled, Aditi succumbed to the societal pressure. In the days that followed Aditi juggled between jobs yet, her heart was set on the much-coveted entrepreneurial path. The teaching gig she undertook became a source of constant dissatisfaction and dejection. She knew she had to do something, as giving up wasn’t an option for this fearless rebel.
With Mayank’s technical skills and support by her side, she decided it was time to charterer unexplored territories and thus the dynamic-duo conceptualized ‘EngineerBabu’. EngineerBabu is an IT services company that develops websites and mobile applications.
EngineerBabu Homepage
In the early days of EngineerBabu Aditi kept her work under wraps. However, soon the company launched by 2 founders blossomed into a team of 50. Aditi’s name echoed in renowned platforms including but not limited to Rajasthan Startup Fest, Startup Conclave (Nepal), Women Tech Makers by Google. She was written about in popular online as well as offline portals like The Cosmopolitan, Asian Entrepreneur and many more.
Amidst all the success and fame she still longed for support from her near & dear one’s. The newspapers were talking about her accomplishments and she was presented the Leadership award of excellence By DAVV University. As luck would have it her parents saw an article in a popular magazine featuring their daughter. The conservative mindset was challenged and they began to realize that their daughter was spirited, fearless and above all a SUCCESSFUL ENTREPRENEUR.

Words of Encouragement for Budding Women Entrepreneurs

With their brainchild EngineerBabu thriving, Aditi is often asked for her opinion on entrepreneurship and the disparity it entails. On this delicate subject, this is her answer –
“If a woman decides to pursue something different then she is judged. As women, we are expected to get married, have children and look after the household. Our wings are cut at every step. I encourage women to stand up for themselves in every aspect of life. The society needs to accept that a woman can succeed in any field of work. When the world changes its outlook towards women, I’ll call it the best day of my life.”

– said Aditi.

From medicine to MBA she shuffled through many streams, but in the end, she listened to her heart and today she’s counted amongst the top 100 women entrepreneurs and top 25 Women Influencer by popular online platforms. To steer women towards a career in technology Aditi has come up with another remarkable venture called SheConnect that trains and encourages women through workshops and training sessions in IT and tech domain.
Aditi’s road to success wasn’t a runaway victory. She moved forward with gumption and gusto and defied all odds to realize her dreams. Her advice to budding women entrepreneurs is “Be persistent and remember you can achieve any goal with perseverance and tenacity.”
Ellen J. Barrier’s famous quote – “Her power of perseverance is as that of an eagle. She soars above her challengers.” rings true when we see it through the eyes of entrepreneur extraordinaire – Aditi Chaurasia.
Also, if you are from Indore, that’s where SHEROES will be hosting its first Summit to celebrate #takecharge women and the joys attached to taking charge.


 

The post The Girl Who Won’t Take No For An Answer appeared first on EngineerBabu Blog.

]]>
https://engineerbabu.com/blog/the-girl-who-wont-take-no-for-an-answer/feed/ 0