The Software Engineer for Advancement is a full-stack developer who designs, develops, tests, and maintains software applications that advance the mission of Dartmouth's Advancement division. This role requires a strong combination of technical expertise across multiple platforms and programming languages, alongside a deep understanding of our business objectives. The successful candidate will apply both business acumen and technical skills to deliver high-quality, maintainable solutions within an agile team environment This role independently executes moderate to complex technical work and actively contributes to team-based architecture and implementation efforts. The Software Engineer collaborates with teammates, clients, vendors, and campus partners to develop custom applications, enhance vendor systems, and support integrations that connect Advancement systems to broader institutional platforms. This includes involvement in system design, database development, API creation and consumption, testing, and support for both on-premise and cloud-based solutions. The role also supports deployment automation, infrastructure maintenance, and DevOps practices in partnership with more senior team members. Strong analytical, problem-solving, and communication skills are essential for working effectively within a cross-functional team. The Software Engineer contributes to team growth through knowledge sharing, code review participation, and process improvement efforts. Are you a full-stack developer passionate about purpose-driven technology? Dartmouth's Advancement Systems and Services team is looking for two Software Engineers to help design and build innovative solutions that support our institutional mission. We are looking to hire two talented individuals into this role. Make an impact. Grow your skills. Join a team that values innovation, collaboration, and team engagement.