MIT- Software Engineer Intern | Engine
Software Engineer Intern | EngineSan Francisco, CA, United StatesAbout SingleStoreSingleStore is a cloud-native distributed SQL database built for real-time applications, analytics, and AI. Our platform unifies transactions and analytics so organizations can work with data quickly, reliably, and at scale.About the Engine TeamThe Database Engine team builds the core technology behind SingleStore, including query processing, optimization, storage, data ingestion, distributed systems, reliability, and performance.As an intern, you will join a small, collaborative engineering team and contribute to meaningful projects that move from design to production through our regular release cycles. You will learn from experienced engineers while developing a strong foundation in systems and database engineering.About the RoleAs a Software Engineer Intern, you will design, implement, test, and improve production-quality software for the SingleStore database. You will work on well-scoped projects, participate in technical discussions and code reviews, and gain hands-on experience solving challenging problems in large-scale software systems.Your work may include:Developing new features and improvements across the SingleStore databaseWorking on SQL query processing and query optimizationImproving storage engines, indexing, and data managementBuilding reliable distributed-system componentsWorking with concurrency, multithreading, and fault toleranceInvestigating performance, scalability, and correctness issuesWriting production code, tests, documentation, and technical designsCollaborating with engineers, product managers, and cross-functional partnersDepending on the team and project, you may also work with performance engineering, SIMD, LLVM-based code generation, search, vector search, cloud infrastructure, or AI data workloads.Required QualificationsCurrently pursuing a bachelor's or master's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related fieldStrong foundation in data structures, algorithms, operating systems, and computer architectureUnderstanding of concurrency, multithreading, and server-based systemsProgramming experience in C++ or CStrong analytical and problem-solving skillsAbility to communicate clearly and collaborate effectively with teammatesCuriosity, ownership, and willingness to learnPrior professional experience is not required. We welcome candidates who have developed their skills through coursework, research, projects, internships, or open-source contributions.Preferred QualificationsCoursework or project experience in databases, distributed systems, operating systems, compilers, networking, or storage systemsExperience debugging or optimizing systems-level softwareFamiliarity with Linux or Unix-based systemsExperience with performance profiling, memory management, or low-level programmingExperience contributing to production software or substantial technical projectsWhat You'll GainHands-on experience building software for a production distributed databaseMentorship from experienced database and systems engineersExposure to database internals, query processing, storage, reliability, and performance engineeringOpportunities to collaborate across engineering and product teamsA supportive environment focused on technical growth and meaningful ownershipA deeper understanding of how software is designed, tested, released, and operated