SW Engineer Career Paths

Roles and Responsibilities of Software Engineering: (Quick overview of roles and responsibilities of software engineering jobs)





Within SW Engineering, there are multiple disciplines, each discipline creating job position to implement a product that is reliable, meets performance, and will satisfy the user expectation.  Once you start your career in software engineering, there will be many opportunities to branch out to different jobs within software engineering discipline.  Don’t be afraid to try out different roles once you start working for a software engineering company.

  • Requirements Analyst / Business Analyst / Systems Engineer
  • Software Design and Programming (Programmer Analyst, SW Engineer)
  • Software Testing / QA Testing
  • SW Configuration Analyst
  • Roles & Responsibilities of SW Configuration Analyst Job




Requirements Analyst / Business Analyst / Systems Engineer

Requirement Analysts play an important role during the planning phase of a software development project by analyzing and clarifying all software requirements.  Analyses are performed at all levels of the entire system product to include: concept, design, implementation, test, installation, and operation and maintenance.  Performs system analysis, timeline analysis, trade studies, requirements refinement and interface definition to translate customer requirements into low level hardware and software specifications.  Requirement Analysts effectively document and communicate the requirement to the SW engineering team, primarily developers and testers.  Requirement Analysts interact with customers to define the requirements and desired capabilities.

Roles & Responsibilities of Requirement Analyst Job (Important skills):

  • Gather customer needs by listening effectively
  • Ability to refine requirements into low level specifications
  • Document customer needs
  • Communicate customer needs to SW engineering team
  • Create workflows or flowcharts based on customer needs
  • Prioritize system requirements based on customer needs
  • Must be able to effectively communicate as the system requirements change during project implementation stages
  • Act as a liaison between customer and SW engineering team throughout the software lifecycle
  • Participate in peer reviews to ensure the system requirements or the customer expectations are being met. Must be thorough and attention to details.
  • Ability to evaluate and perform trade studies on COTS products using evaluation criteria

Entry Level Requirement Analyst Average Salary: $53,200

Education Level: Computer Science related fields or MBA

Software Design and Programming (Programmer Analyst, SW Engineer)

Designs and builds the solution by following the SW engineering process throughout the development life cycle.  Programs applications using languages such as C++, visual basic, JAVA, ASP.net, etc. Provides patches and upgrades to existing systems as part of maintenance. Design graphical user interface (GUI) to meet the specific needs of users. Creates operating instructions, compiles documentation of program development, analyzes system capabilities, and performs troubleshooting on system issues.

Plans, conducts, and coordinates software development activities. Designs, develops, documents, tests, and debugs software that contains logical and mathematical solutions to business/mission problems or questions in computer language for solutions by means of data processing equipment. Applies the appropriate standards, processes, procedures, and tools throughout the development life cycle. Applies knowledge of computer hardware and software, subject matter to be programmed in business/mission applications, information processing techniques used, and information gathered from system users to develop software. Corrects program errors, prepares operating instructions, compiles documentation of program development, and analyzes system capabilities to resolve questions of program intent, output requirements, input data acquisition, programming techniques, and controls. Ensures software standards are met.




Roles & Responsibilities of SW Engineer Job (Important skills):

  • Understand software requirements / receive clarifications when necessary
  • Become familiar with the software architecture
  • Create system design using UML
  • Understands software lifecycle
  • Be subject matter expert in at least 1 primary programming language
  • Troubleshooting issues by reading logs and analyzing the source code
  • Documentation writing
  • Detail Unit testing
  • Integrating and testing COTS product to existing system
  • Accurately interpreting system requirements and customer needs
  • Provide feedback during Retrospective / Lessons Learned sessions
  • Improve software engineering development process
  • Resolve software defects
  • Interface with backend database (be able to query, insert, delete, update records)

Entry Level Requirement Analyst Average Salary: $61,600

Education Level: Bachelors degree from an accredited college in a related discipline (e.g. Computer Science), or equivalent experience/combined education

Software Testing / QA Testing

Performs integration testing, performance testing, stress testing, and regression testing of the system to verify that the solution produces a high quality product.  Testers usually collaborates with engineering team to ensure high quality products are produced.  They perform regression testing to ensure all functions are working without defects, perform performance testing to ensure the system speed requirement is met, and perform stress / load testing to ensure the system is effectively implemented without crashing especially when there is an increase in the volume.

Roles & Responsibilities of SW Testing Job (Important skills):

  • Understand software requirements / receive clarifications when necessary
  • Become familiar with the software architecture
  • Understand and follow the master test plan and/ or the project plan
  • Create / assist in creating detailed engineering test plan
  • Generate test cases / scenarios based on the requirements
  • Build test data required for testing, may require access to database
  • Create / assist in test automation. May need to build experience with software automation tools
  • Test systems by executing test cases / scenarios / scripts
  • Report defects and test results to the stakeholders
  • Improve test process / test cases based on the defects
  • Continue educating yourself with the development technology, the popular testing tools involving automated testing tools and test management systems
  • Provide feedback during Retrospective / Lessons Learned sessions

Entry Level Requirement Analyst Average Salary: $58,800
Education Level: Bachelors degree from an accredited college in a related discipline (e.g. Computer Science), or equivalent experience/combined education.

SW Configuration Analyst

Provides ways to control and maintain all changes to the software configuration usually via Software configuration management tool COTS products and maintains integrity and traceability of the software configuration throughout the software lifecycle.  Coordinates modification to system related artifacts (i.e. source code, documentation, scripts, plans, etc.) for management control.  Reviews and analyzes released engineering changes and ensures that customer requirements are implemented to ensure compliance with configuration management policies.  Designs and implements build procedures that are used to support software product development.  Trains software developers in the use of configuration management tools and the implementation of software quality standards.

Roles & Responsibilities of SW Configuration Analyst Job (Important skills):

  • Control and maintain all changes to the software configuration
  • Must be proficient with SW configuration management tool COTS product (e.g. Rational Team Concert)
  • Perform build procedures
  • Implement build scripts
  • Provide training to SW engineering team

 

Entry Level Requirement Analyst Average Salary: $58,800

Education Level: Bachelors degree from an accredited college in a related discipline (e.g. Computer Science), or equivalent experience/combined education.

Providing Coaching and Mentoring Sessions to start SW Engineer careers