Software Engineering SMTS (Performance/Database)
What you'll need to apply
Fields this application requires
Company-specific questions
- As a U.S. company that exports software and technology internationally, we must comply with U.S. export control laws in every country where we operate. The information provided will be used to determine whether we need to obtain an Export Control License for your employment if you are hired. Are you a citizen, national or permanent resident of Iran, Cuba, North Korea or Syria?
- Regarding future positions at Salesforce, please select one of the following options
- I acknowledge that I have read, reviewed and answered the above questions truthfully and accurately. I further understand, and agree, that any offer of employment I may receive from Salesforce is conditional on the truth of the above statements and that, in the event it is subsequently determined that any of the above is inaccurate, any such offer of employment can be rescinded and, in the event I have commenced employment, such employment will be terminated, to the extent permitted by applicable law. Please select "yes" if you acknowledge.
About this role
Employer-provided description, formatted for easier reading.
The Salesforce Database team is building the future of trusted enterprise computing in the cloud. We're a fast-paced highly collaborative team and work across all areas of our distributed transactional database technology stack.
We are seeking creative and dynamic performance engineers to deliver the tools, analysis, and optimizations that will drive the Salesforce database (SDB) technology to new levels of performance and scalability with every release.
Our performance engineers partner closely with database and storage system developers, application performance engineers, infrastructure engineers, and our analytics team to deliver all the pieces that add up to high performance in production at scale. Sounds exciting? It is!
Job Responsibilities:
- Develop, run and analyze a comprehensive suite of performance workloads and system benchmarks for release qualifications, research, and development projects
- Investigate production performance issues
- Work closely with systems and application developers to deliver performance fixes and proactive improvements.
- Devise, prototype and evaluate system performance and scalability improvements (algorithmic efficiency, concurrency control, memory management, etc.)
- Profile the database engine (C code) and storage service (Java code)
- Conduct benchmarking, analysis and modeling for hardware selection and capacity management
- Collaborate with multiple teams on telemetry, dashboards, and analysis facilities to manage the performance of our rapidly growing production fleet
Requirements:
Strong CS fundamentals including data structures, algorithms, and system design
- Strong coding skills (Java or C/C++)
- Proficiency in SQL database programming
- Fluency with Linux commands, interfaces and OS concepts
- Expertise in data analysis and visualization
- High energy and enthusiasm for technical problem solving, learning and growth mindset
- Great communication and collaboration skills
Desired Skills & Experience
- Experience with SQL query optimization, knowledge of DB optimizer internals
- Depth in database architecture and internals
- Experience with Splunk for performance monitoring and analytics
- Java profiling tools, JVM tuning, heap dump analysis
- Working with source control systems (Git preferred)
- Linux shell scripting, Python
- Statistical analysis and experimental design
- Operating system concepts including processes, threads, memory management, networking, file systems, and storage
- Network technologies like DNS, Load Balancing, SSL, TCP/IP, HTTP
- Cloud based platforms and infrastructure (AWS, GCP, Azure)
- Docker and Kubernetes