Software Performance Engineer- Data Architect
Sr. Performance Engineer for a Long Term Contract role
Job Description: The Software Performance Engineer (SPE) is responsible for addressing software performance risks and issues throughout the development process, especially prior to release. The SPE works closely with all members of the development team, especially developers, to ensure that performance objectives are set and met for software deliverables as they are developed, performance issues are exposed and addressed as soon as possible, and software causes of performance issues are identifies and eliminated. This position will focus on performance engineering at the application and database layers with less of a focus on the physical infrastructure. Responsibilities • Incorporate performance risks into existing risk management processes. • Review business requirements and performance goals and translate them to performance objectives for software deliverables. • Identify sensitivity of the application/database architecture and software design to key business factors, such as peak transaction volumes and skews in data distribution. • Evaluate application, software and database design alternatives against performance objectives. • Profile, characterize and report on software performance profiles. • Model and predict software performance against candidate target platforms. • Review and analyze results of performance tests against predictions and assist in isolating software sources of performance issues. • Assist developers in identifying, recreating, and correcting software performance issues with appropriate techniques, e.g.: performance unit and integration tests, software profiling. • Represent development in collaboration with other PEs in quality assurance and infrastructure support areas.
Required Skills: • Understanding of critical performance engineering concepts, including throughput, residence time, latency, demand, memory and resource utilization. • Understanding of the DynaTrace suite of products. • Knowledge of and experience in at least two of the following software performance engineering techniques, activities and/or tools: o Identify potential limitations in software architectures o Software performance modeling concepts, techniques and tools, such as QNM o Designing, implementing, executing, and analyzing software performance tests and benchmarks. o Identify and resolve software bottlenecks o Developer performance testing techniques and tools o Eclipse-based profiling tools o Oracle Database performance tools • 5+ years Java programming experience • Attention to detail • Written, verbal and personal communication skills. • Ability to analyze, understand, and communicate to others technical data, specifications, designs, etc. • Expert troubleshooting and reasoning skills
Critical Skills: DynaTrace
Preferred Skills: JavaEE and Spring development experience
Education/Certifications: Bachelor's or Master's Degree in a relevant field of work or equivalent work experience.