Software Engineering SMTS
$173k - $260k • Remote • California - San Francisco
Posted 1d ago
Job Location
California - San Francisco
Tech Stack
Remote Work Policy
Fully remote
Categories
Machine Learning Engineer
About the job
Salesforce is seeking experienced Database Distributed Systems Software Engineers to join their Agentforce team. This role involves designing and building highly concurrent, distributed systems that support Salesforce's growth, focusing on database internals, systems programming, and software engineering. You will own work from start to finish, including architecture, design, implementation, monitoring, testing, and product support for large, mission-critical systems, shaping the future of Salesforce's database infrastructure.
Responsibilities
- Lead the design and implementation of complex database features, focusing on advanced transaction management for performance, scalability, consistency, and reliability in distributed systems.
- Solve SQL execution challenges to enable transactionally consistent DDL on distributed database systems, overseeing schema evolution and versioning.
- Optimize database operations at very large scale, developing patterns for data integrity, consistency, and efficient data manipulation across distributed datasets.
- Build database services on AWS, GCP, or other public cloud platforms.
- Participate in the team's on-call rotation to resolve complex problems and maintain service availability.
- Troubleshoot and resolve complex database issues in demanding production environments with fast recovery.
- Contribute to the roadmap for core database technologies and frameworks, influencing future architectural decisions.
Requirements
- BS or higher in Computer Science, or equivalent practical experience.
- Strong computer science fundamentals, including data structures, algorithms, and distributed systems.
- 7+ years of software development experience, with significant focus on large-scale, database-intensive, distributed applications.
- Deep knowledge of database transaction management, including concurrency control, isolation levels, and distributed transactions.
- Experience designing database applications for high-volume, complex data operations, including query tuning and performance analysis for highly concurrent systems.
- Strong programming skills in at least one relevant language (e.g., Java, Python, or PL/SQL), with a focus on systems-level programming for database interactions.
