Symyx Technologies – Principal Software Engineer  – Location: Bend

We’re looking for a principal software engineer to help develop and maintain our rapidly expanding suite of enterprise solutions for the pharmaceutical, biotechnological and fine-chemical industries. You will be part of a small, dynamic development team that is dedicated to delivering high-quality, on-time software releases using TDD, short, done-done iterations and other best-of-breed Agile practices. We utilize leading-edge technologies to deliver highly scalable, n-tier and SOA solutions.

You must be able to decompose complex problems involving a multi-tier application space into the architectural components relevant for analyzing the system’s ability to meet its functional requirements in a performant, scalable, robust and secure manner. You will be responsible for the design, implementation and unit testing of reusable software components and applications in a team setting to support external product releases and  multiple internal product teams. In this capacity, you will need to develop effective working relationships with members from other development teams, quality assurance, product marketing, technical communications, and technical services teams.  As an additional responsibility, you will be required to lead a project, including leading team members in defining, estimating, and scheduling project tasks and organizing and coordinating work effort of team members.

The position is located in beautiful Bend Oregon, 20 minutes away from a major ski resort, and within minutes of hiking trails, river rafting, golf, kayaking and hundreds of miles of mountain biking trails.

  • Requirements of the Position are:
    12+ years of programming experience in a commercial environment.
  • Proficiency in C#, the .NET . Microsoft development technologies.
  • Experience designing, implementing and delivering n-tier and SOA systems.
  • Broad technical knowledge in object-oriented design and implementation, design patterns, and software development methodologies.
  • Experience designing and implementing reusable software components.
  • Excellent written and verbal communication skills.
  • Strong analytical and organizational skills.
  • Ability to work independently, as well as a member of a team.
  • Strong personal drive to learn leading-edge technologies and to excel.
  • Experience with Agile development methodologies.
  • Experience with XP best practices such as TDD is highly desirable
  • Experience developing GUI applications with Windows Forms and/or Windows Presentation Foundation.
  • Experience developing web applications with ASP.NET and Web Services.
  • Experience with technical consulting or technical training.
  • Experience in chemistry or other physical science helpful.

Duties and Responsibilities:

  • Design, implement, test, document, and maintain software services, applications, and reusable software libraries.
  • Advise software engineers throughout the company on optimal use of platform components and technical best practices.
  • Participate in product design with senior engineers.
  • Conduct thorough unit testing and integration testing of developed software.
  • Research problems discovered by QA and develop solutions to the problems.
  • Prepare technical documentation of product subsystems.
  • Contribute regularly towards improving the technological culture and environment of the company (examples of such include making presentations at department functions, leading discussion groups, informally guiding junior engineers, and bringing suggestions for improvement to the department supervisor)

Supervisory Responsibility:

While no direct supervisory role is associated with this position, all Principal Software Engineers must be capable of serving as a team lead, which may entail:

  • Breaking large projects down into subprojects and specific tasks,
  • Estimating effort and building project schedules,
  • Assist the team in ensuring that tasks being executed correspond to identified objectives.
  • Help proactively identify and resolve road blocks and obstacles in the development process.
  • Assisting in the professional development of team resources (including monitoring and assisting with performance objectives, as well as drafting performance assessments)

Contact: Tom Barreras (tom.barreras@symyx.com)

  • Share/Bookmark