Software Performance Engineer

Teradyne, Inc. North Reading , MA 01864

Posted 6 days ago

We are the global test and automation specialists, powering next-generation technologies through sophisticated solutions. Behind every electronic device you use, Teradyne's test technology ensures your device works right the first time, every time! Our portfolio of automation solutions help manufacturers to develop and deliver products quickly, efficiently and cost-effectively. Together, Teradyne companies deliver manufacturing automation across industries and applications around the world!

Organization & Role

Teradyne is a global test and automation specialist, powering next-generation technologies through sophisticated solutions. Our software systems employ a wide array of technologies running on both Linux and Windows operating systems in a distributed environment. The software makes use of multi-threading/asynchronous programming in both C# and C++.

We are seeking a highly skilled and motivated Software Performance Engineer to join our team. The ideal candidate will have a deep passion for constructing software systems that meet performance objectives and exhibit a relentless curiosity for investigating and optimizing performance and memory issues. This role is crucial for ensuring that our software products operate at peak performance, providing the best possible experience for our users.

Responsibilities

Performance and Memory Optimization

  • Work with our development teams to aid in analysis, identification, and resolution of performance bottlenecks in our software products.

  • Optimize code to enhance the performance, responsiveness, and scalability of our applications.

  • Investigate and address memory issues, including leaks and inefficient usage, to ensure optimal application performance.

  • Implement memory optimization techniques to improve overall system efficiency.

Collaboration and Communication

  • Work closely with development teams to diagnose and debug performance bottlenecks and memory inefficiencies.

  • Help to incorporate performance and memory considerations into the software development lifecycle.

  • Communicate findings, solutions, and performance improvements to stakeholders and team members.

Tools and Techniques

  • Employ advanced performance analysis tools and profiling techniques to diagnose and fix performance issues.

  • Stay current with the latest tools and technologies for performance engineering, specifically in the .NET and C++/COM technology stacks.

  • Standardize design patterns for our products that provide solutions with optimal performance and memory utilization.

Product Enhancement and Diagnosability

  • Propose and implement enhancements to the product to improve telemetry and diagnosability of performance and memory inefficiencies.

  • Develop and integrate robust telemetry systems to aid in identifying and diagnosing future performance and memory issues prior to product delivery.

  • Continuously monitor and improve the performance of our software products.

Basic Qualifications & Skills

Proficiency in Programming Languages

  • Extensive experience with C# and C++ programming languages.

  • Strong understanding of .NET Framework and COM application development.

  • Experience with multithreaded systems and asynchronous programming techniques.

Performance and Memory Investigation

  • Demonstrated ability to investigate and resolve performance and memory issues.

  • Passionate about optimizing code for better performance and efficiency.

Advanced Investigative Tools

  • Hands-on experience with modern tools and techniques for analyzing .NET and C++ applications.

  • Proficiency in using performance profiling and diagnostic tools.

  • Specific experience with Visual Studio Profiler, JetBrains, PerfView, Windbg and ETW

Problem-Solving and Analytical Skills

  • Strong analytical skills with a detail-oriented approach to solving complex problems.

  • Ability to think critically to diagnose and address performance issues.

Education and Experience

  • Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.

  • 10+ years of experience in software development and performance engineering.

  • Experience with agile development methodologies.

  • Familiarity with other programming languages and frameworks is a plus.

Job Segment: Software Engineer, Test Engineer, Testing, Manufacturing Engineer, Developer, Engineering, Technology


icon no score

See how you match
to the job

Find your dream job anywhere
with the LiveCareer app.
Mobile App Icon
Download the
LiveCareer app and find
your dream job anywhere
App Store Icon Google Play Icon
lc_ad

Boost your job search productivity with our
free Chrome Extension!

lc_apply_tool GET EXTENSION

Similar Jobs

Want to see jobs matched to your resume? Upload One Now! Remove

Software Performance Engineer

Teradyne, Inc.