Principal Software Engineer

Year    KA, IN, India

Job Description

JOB SUMMARY:
The Principal Software Engineer is responsible for playing a leading role on a team focused on the development of applications. This person analyses, designs, programs, and debugs software enhancements. Using multiple programming languages, this engineer will design, implement, test and debug the full software stack. Prepares documentation and procedures for installation and maintenance. Interact with users to define system requirements and/or necessary modifications. Experienced in object-oriented design, design patterns, coding, performance tuning, and unit testing. Experience in logical data modelling and experience in defining and using databases programmatically. This person must also have solid communication and team-building skills and must be able to participate in software design discussions and guide the architecture of the solution based on proven object-oriented design concepts, industry standard patterns, and best practices. Mentors, guides and aid the growth of less-experienced developers through leadership.

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 using: Microsoft C# .Net Development Open Source Technologies ASP.Net MVC 3.0+ framework HTML5 JavaScript Microservices WCF (REST/SOAP) web services, XML and JSON protocols Windows Services WPF ActiveMQ Redis Cache JasperSoft reporting framework Relational DBMS (MSSQL Server and/or PostgreSQL and/or SQLite) NoSQL Cross-platform development Operating systems (Windows, Linux) AWS/Azure Containers and Container Orchestration Docker Kubernetes OpenShift Logical data modeling, database definition and manipulation, and data synchronization Object oriented design, coding, performance tuning, and unit testing Research, extraction and analysis of complex data Authors and reviews technical requirements ensure compliance with business requirements Performs proper unit testing and software code writing (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 and develops the skill level of others through mentorship 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 prioritisation of workload Perform such other duties as may be assigned by management Essential to be available to work during Omnitracs' corporate business hours


QUALIFICATIONS:

EDUCATION: Bachelor's degree in Computer Science, Computer Engineering
EXPERIENCE: 15+ years of applicable Software Development experience

KNOWLEDGE/SKILLS/ABILITIES:Experience in Microsoft C# .Net Development Experience in ASP.Net MVC 3.0+ framework Experience in WCF (REST/SOAP) web services Experience in Database management system Excellent interpersonal skills Excellent written and oral English skills Excellent working knowledge of logical data modeling and Database management systems Excellent working knowledge of C#/Java development environments and process Versed in industry standard Software Development Life-Cycle (SDLC) process methodologies and Agile methodologies such as SCRUM Knowledge of Agile practices Knowledge and understanding of software design patterns Knowledge of Open Source Technologies Familiar with using UML in document design Knowledge of developing mobile applications Transportation industry knowledge desired but not required Experience mentoring less experienced developers Approaches software development using industry standard concepts, practices, and procedures Ability to work on multiple tasks simultaneously with various team members and/or other groups both internally and externally Ability to effectively engage in self-directed time management and prioritization of workload Ability to work independently to develop new skills as needed to support new products and applications * Ability to coordinate and oversee parallel efforts for multiple developers

Beware of fraud agents! do not pay money to get a job

MNCJobsIndia.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD4618536
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    KA, IN, India
  • Education
    Not mentioned
  • Experience
    Year