Nervine Systems employs talented and experienced people with a wide range of disciplines and skills to meet our clients' needs on all types of custom software development and automation control systems and application projects.
Nervine Systems is seeking an experienced Principal Software Engineer for our Massachusetts office. This role requires an organized and professional achiever who will bring a high-level of expertise and commitment to service our clients. This individual must be well versed in the full life cycle software development process.
Along with a strong technical background in software development, the company requires a clear thinker and persistent motivator. This is a hands-on role, one that for the right individual will be extremely rewarding. The individual we are seeking will thrive on an opportunity to deliver excellence to our clients by meeting project deadlines with a high level of quality and expertise.
Nervine Systems is more than a staffing agency; we are a team of experts working with clients on all types of custom software development and automation control systems and applications. Nervine Systems prides itself on professional results with the commitment to be the best.
To succeed it will be imperative that this person consistently follows safety policies, works well with minimal supervision, and is a team player.
Become an employee of Nervine Systems working with our clients on project based and consulting roles as a Princpal Software Engineer. As part of these roles, you will be providing guidance and services in varying levels of duties as a Principal/Senior Software Engineer; duties may include working on multiple projects and taking a leadership role as project manager and client liaison for assigned projects; coordinating with other staff and team members; identifying and growing other business opportunities.
Overview of Duties:
- Develops software solutions by studying information needs; conferring with users; studying systems flow, data usage, and work processes; investigating problem areas; following the software development lifecycle.
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
- Prepares and installs solutions by determining and designing system specifications, standards, and programming.
- Can work independently and within teams at all phases of a full software development life cycle.
- Completes high-level tasks completely and on time.
- Provides project management and acts as a client liaison for assigned projects.
- Provides production support and addresses critical issues in an urgent manner.
- Identify and grow business opportunities.
- Protects operations by keeping information confidential and keeping operations objectives priority.
- Supports and develops software engineers by providing advice, coaching and help improve the productivity of other software engineers.
- Actively involved in architecture and process improvements.
- Learns new things quickly and continues self-improvement by studying state-of-the-art development tools, programming techniques, and computing equipment; participating in educational opportunities; reading professional publications; maintaining personal networks; participating in professional organizations.
- Work at client’s sites and some out-of-state travel may be required from time-to-time.
Skills and Requirements:
Must have proven experience in developing software in accordance to coding standards and design documentation. The candidate must have experience working with and interfacing to machine control systems.
The ideal candidate will have a proven track record in engineering leadership with the ability to develop and implement standard engineering practices, as well as provide detailed documentation upon project completion. This person will typically be the project technical lead and may be responsible for some project management activities. A BS in Electrical or Computer Engineering is desired. A minimum of 7 years’ experience in a similar position is required. Experience in Bio-Tech, Pharmaceutical, and Semiconductor industries is a plus.
- General: Analyzing Information, Software Design, Software Documentation, Software Testing, Teamwork, General Programming Skills, Software Development Fundamentals, Software Development Process, Software Requirements, Software Architecture, Coaching.
- Advanced Microsoft C# .NET programming skills
- Includes WinForms and WPF
- Developing User Controls
- Experienced with writing and executing unit tests using Microsoft and NUnit.
- Experienced with UML and design patterns.
- Database programming skills using SQL or Oracle
- Experienced working directly with customers.
- Experienced working with automated machinery and equipment.
Additional highly desirable skills:
- Microsoft Visual Basic 6 and VBA programming experience
- Experience working in a validated process; such as, GMP/GAMP
- Experience working with Microsoft Team Studio Environment
- Experience working with code contracts, style cop, and other compliance and coding analysis tools.
- Experience working with Spark Enterprise Architect.
- Experience working with Motion Control, Vision, Data Acquisition, and programmable logic controllers.
- Experience with C/C++
Job Status: Full Time or Contract/Temp to Hire.
If you are a creative and self-motivated individual that works well independently and within teams, enjoy learning new things quickly, can communicate written and orally effectively, and have the commitment to be your best always, then we encourage you to submit your resume by mailing, emailing, or faxing it to us though our contact page. Please include a cover letter and salary requirements.
Please note that we do Not accept walk-ins at any of our locations.
Nervine Systems, Inc. is an Equal Opportunity Employer.