Software development

SOFTWARE DEVELOPMENT

Our software developers are trained to work in teams. Especially large software projects require that every developer is aware of the development process and follows specific rules to minimize the risk of build breaks or regressions. Although each developer works in a specific area of the product, all understand the common process:

DESIGN

  • Prototyping – for projects where the design is unclear
  • Splitting the project into smaller tasks
  • Estimating task time lengths by several developers
  • Writing detailed design documentation

CODING

  • Based on design preparing small functional pieces of the code for submission into the Source Code Management repository
  • Usage of branches to eliminate the risk of main stream destabilization
  • Branch integrations, source code merges
  • Review of code changes
  • Manual and automated testing before submission to prevent regressions

TESTING

  • Creating documentation describing main workflows to test
  • Reviewing a thorough testing plan across all functionalities, which were added or modified by the project.

DEFECT TRACKING

  • Ability to log, analyze and resolve defects
  • Analyze and fix Crash Error Reports

PROGRAMMING

  • C, C++
  • MFC, STL and familiar with COM
  • Expert for MS Visual Studio