Contents


Name of Skill Classification of Skill Prerequisites for Skill Related Software Engineering Areas(s) Rationale for Skill Roles for Skill Work Related To Skill Real World Example Role of Academia/Industry Tools supporting the skill Skill Self Assessment References




Role of Academia or Industry in Cultivating the Skill

  1. Role of Academia
    • Development of background skills needed to be a good API programmer:
      • Concepts of Programming
      • Data Structures
      • Algorithms
      • Database Design and Database operations
      • Multi-Threading Concepts
      • Various client (HTML, CSS, JavaScript) and server (PHP, Javascript, Java, Python, Erlang) side programming languages.
  2. Role of Industry
    • I have been working at Addope Media for over an year as a Software Developer. During this period, I have learnt about API's and started working with Node.js framework. I attained proficiency in developing API's using Node.js and performing database operations on MongoDB Collections.
    • I have learnt to develop robust API's, versioning of API's, designing database while working at Addope Media.
    • Use of API's in micro-service architecture


Tools Supporting the Skill

  1. Integrated Development Environment (IDE) are preferred for the support they provide for integration and usage of various libraries to build API's
    • WebStorm
    • Eclipse
    • IntelliJ IDEA
    • Visual Studio
  2. OpenAPI Specification
    • Defines a standard, programming language independent interface description for REST API's.
    • Allows humans as well as computers to understand the capabilities of a service without accessing the source code and additional documentation.
  3. Best Tools to Design, Build, Test API's
    • SoapUI
      • Supports SOAP as well as REST API's
      • Functional
      • Data-Driven
    • Katalon Studio
      • Automation Testing tool for Web, API
      • Also supports both SOAP and REST API's
      • Built-in Integrations with Jenkins, JIRA, Slack, Docker and qTest
    • Postman
      • Used to build as well as test API's
      • Uses JavaScript
      • Store associated API endpoints into a collection
    • Swagger UI
      • Known as the best API Tools to design, build and test API's
      • Test API's on cloud
      • Supports SOAP as well as REST API's
      • Provides Documentation with OpenAPI
  4. API Programming: Documentation Tools
    • ReDoc.ly
    • SwaggerUI
    • DapperDox


Skill Self-Assessment (My Skill Score (1 - 10) and Reasons for Self-Assigned Score

My Self-Assessed Skill Score: 8/10

Reason:

I have experience of working on 5 micro-services simultaneously, designing API's for each, communicating internally and sharing data, and thus have a good grip over developing API's, performing side-effects, designing code with high-cohesion and less coupling. While designing this website, I went through many articles that helped me gain in-depth knowledge about the skill. I have not had the chance to work with SOAP API's since I started using REST API's at work and there has not been any situation where we were compelled to use SOAP in-place of REST API's. API documentation is the only role related to the skill which I am not experienced at.

Given the ever-growing technological paradigm, it is a long way for me to be an expert at this skill. With time, I am evolving to learning new ways to tackle different problems and finding an efficient solution.