JOB SUMMARY:
The Software Engineer is responsible for playing a role on a team focused on the development of software used in Software as a Service (SaaS) applications. This person analyzes, designs, programs, debugs, and modifies software enhancements. Using .Net Development programming language and web technologies, will write code, complete programming, and perform testing and debugging of applications. Completes documentation and procedures for installation and maintenance. May interact with users to define systems requirements and/or necessary modifications. Experience in object oriented design, coding, performance tuning, and unit testing. Knowledge of logical data modeling. This person must also have good communication and team building skills, and must be able to participate in software design discussions and guide the architecture of the solution based on good object oriented design concepts, and both industry standard patterns and Microsoft best practices.
ESSENTIAL RESPONSIBILITIES AND DUTIES:
- Translates business requirements to conceptual solution architecture and high-level project estimates.
- Develops, modifies, and implements Software as a Service (SaaS) hosted applications according to business requirements including:
- .Net Development
- Android Estudio
- (REST/SOAP) web services
- MSSQL Server
- PostgreSQL
- Open Source Technologies
- Logical data modeling design and implementation
- Object oriented design, coding, performance tuning, and unit testing
- Research, extraction and entry of complex data
- Reviews technical requirements to ensure compliance with business requirements
- Performs proper unit testing and software code written (including automated unit testing)
- Familiar with appropriate standards and techniques used during the Software Development Life Cycle process (SDLC, security) and applies them appropriately
- Participates in the testing process through test review and analysis, test witnessing and certification of software
- Participates in peer code reviews
- May work on multiple tasks/projects simultaneously with various team members and/or other groups both internally and externally
- Engages effectively in self-directed time management and prioritization of workload
- Perform such other duties as may be assigned by management