General Information

Location: Hamilton, NJ

Organization: Medavante-Prophase, Inc

Description and Requirements

SUMMARY OF POSITION: The Principal Software Engineer will be responsible for the design and implementation of custom software implementations, enhancements to existing systems or new product offerings, and providing technical leadership and guidance to a team of developers towards successful project delivery.

Bachelor’s degree in Computer Science, Management Information Science, or related area preferred but not required.

-Requires at least 5 years of development experience in the field.
-Experience in Agile methodology.
-Experience in leading development teams.
-Essential knowledge of the following required: Software development methodology; Microsoft Visual Studio; .NET Framework/C# (ASP.NET/.NET Core preferred); Transact-SQL; SQL Server 2008+; Web Services; and Object-oriented Design.
-Experience in Object Oriented Design and implementation.
-Familiarity with proper Data Normalization techniques.
-Experience in designing multi-tier business logic based systems.
-Familiar with a variety of the field's concepts, practices, and procedures.
-Familiar with a variety of the field's concepts, practices, and procedures. Relies on extensive experience and judgment to plan and accomplish goals. Performs a variety of tasks. A wide degree of creativity and latitude is expected.

ESSENTIAL DUTIES/RESPONSIBILITIES: To perform this job successfully, an individual must be able to perform each essential duty and responsibility satisfactorily. The requirements listed below are representative of the knowledge, skills, and/or ability required.
-Technical Leadership
-Team Support (facilitation, motivation, and team engagement).
-Reinforce technical practices in the team (Enforce quality, best practices, and coding standards).
-Collaborate with other teams and solution architecture team to ensure consistency across teams and assist with design and design vision.
-Own architecture and design for the product(s) and/or feature(s) delivered by the team.
-Understand the overall architectural vision provided by the solution architects and drive the detailed design behind the vision.
-Manage technical risks and debt and ensure these are included in the delivery plan.
-Act as mentor for the developers on the team.
-Software Development.
-Recommend and implement the system architecture needed for new development projects.
-Design and implement custom software development and system enhancement efforts and ensure that corporate quality standards are met in those endeavors.
-Ensure software development is done in a manner that assures long term reliability and maintenance.
-Perform software development to written technical specifications and coding guidelines.
-Interpret written business requirements and technical specification documents.
-Create, document, and implement unit test plans, scripts, and test harnesses.
-Create and maintain technical documentation using defined technical documentation templates.
-Investigate, analyze and document reported defects.
-Perform maintenance programming and correction of identified defects.
-Assist in the management of both internal and external development efforts needed for new product or service offerings.
-Other duties as assigned by supervisor. These may, on occasion, be unrelated to the position described here.
-Attendance and punctuality are essential functions of the position.