What are the responsibilities and job description for the Principal Software Engineer position at Development Resource Group?
The Principal Software Engineer designs, develops, tests, debugs and implements operating systems components, software tools and utilities. Determines systems software design requirements. Ensures that system improvements are successfully implemented and monitored to increase efficiency. Generates systems software engineering policies, standards and procedures.
Responsibilities may include the following and other duties may be assigned :
- Designs, develops, tests, debugs and implements operating systems components, software tools and utilities.
- Proven experience in mobile app development with Swift , XML, Kotlin.
- Solid experience in designing UIs with Swift for iOS and XML for Android.
- Knowledge of integrating RESTful APIs and third-party services.
- Strong experience with unit and integration testing for mobile apps.
- Experience with configuration management tools and best practices (GitHub, GitLab, GSVN, etc.).
- Experience building applications for high availability and scalability.
- Determines systems software design requirements.
- Ensures that system improvements are successfully implemented and monitored to increase efficiency. Generates systems software engineering policies, standards and procedures.
- Exercises considerable latitude in determining deliverables of assignments, with limited oversight from manager
- Coaches, reviews and delegates work to lower level specialists.
- Innovation and Complexity : Problems and issues faced are difficult, moderately complex and undefined, and require detailed information gathering, analysis and investigation .
- Develops solutions to moderately complex problems, and / or makes moderate to significant improvements of processes, systems or products independently to enhance performance of job area.
- Implements solutions to problems.
- Communication and Influence : communicates with internal and external customers and vendors at various levels . May negotiate with others to reach understanding or agreement, and influence decision-making.
Required Knowledge and Experience :
Nice to have :