Principal Software Engineer

.NET, Agile, AngularJS, C#, Collaboration, Communication skills, Computer science, Design patterns, Education, Engineering, Enterprise software, IT, JIRA, JavaScript, Leadership, Management information systems, Microsoft Visual Studio, NHibernate, OOP, PL/SQL, Performance analysis, Problem solving, Productivity, Project management, Research and development, SDLC, SQL, Scrum, Software, Software engineering, Technical drafting, TypeScript, Self motivated, Software development, QA, Mentorship
Full Time
$160,000 - $200,000
Work from home available Travel not required

Job Description

We are currently seeking a highly motivated professional for the role of Principal Software Engineer.  The Principal Software Engineer possesses and applies a broad knowledge of software principles, practices, and procedures related to developing applications and completing difficult technical assignments.  This person will contribute to a culture of excellence and productivity within the software development team.

Essential Duties and Responsibilities

  • Responsible for enterprise-wide development of next-generation member facing systems
  • Be a leader within the engineering team to design and develop enterprise-level software applications
  • Perform analysis of all available information to choose the appropriate solution to resolve problems
  • Lead effective collaboration with members of architectural, engineering, quality assurance teams and other departments within the company
  • Collaborate with product owners to understand and determine business requirements
  • Analyze moderate to complex business needs from documented requirements and specifications and design appropriate technical solutions to meet those business needs
  • Lead technical design discussions with Agile engineering team
  • Perform research and development activities along with application software performance analysis
  • Lead development proof of concept projects
  • Evaluate third-party libraries/frameworks
  • Work effectively in an Agile scrum environment on a wide variety of projects
  • Attend daily agile scrum team standup meetings and work closely with Scrum Coach to assess development priorities/risk
  • Learn about new technologies and make proposals to use them as appropriate
  • Lead others in best software development lifecycle practices, methods, conventions, and standards
  • Act as a mentor and coach to other software engineers using various means including paired-programming, code reviews, and code training walkthroughs.

Qualifications

  • Minimum of 8+ years of professional software engineering experience
  • Proven experience working on complex enterprise software systems
  • Advanced knowledge of Object Oriented Principles and languages
  • Advanced Knowledge of software Design Patterns
  • Advanced Knowledge of software industry best practices
  • Advanced knowledge and experience with Microsoft Visual Studio
  • Advanced knowledge and experience in C# and Microsoft .Net Framework
  • Advanced knowledge and experience in TypeScript, JavaScript, and Angular 1 & 2
  • Advanced experience with relational databases, SQL script writing (Oracle PLSQL preferred)
  • Advanced experience with Object Relational Mappers (NHibernate preferred)
  • Ability to take complex development tasks and develop appropriate software solutions
  • Experience with source control systems (Bitbucket is preferred)
  • Strong interpersonal communication and problem-solving skills
  • Strong written and oral communication skills
  • Ability learn quickly and manage time effectively

Education and Experience

  • Bachelor’s Degree (B.A.) in Information Technology, MIS, Computer Science or related field
  • Experience working with Jira project management software (desired)
  • Experience working in an Agile development environment (desired)
Dice Id : 90942151
Position Id : 6662389
Originally Posted : 6 months ago
Have a Job? Post it