Logo
Appian

Lead Software Engineer

Appian, Mc Lean, Virginia, us, 22107


Lead Software Engineer As a Lead Software Engineer working on the Appian platform, your mission will be to ensure Appian is always fast, scalable and up to whatever tasks our customers configure it to do. You will be solving problems of scale and flexibility that most engineers never see, building a product capable of serving our customers in ways you never imagined. Your scope extends from the high-performance data layer to the cross-platform user interface to the design tools used to create it. To be successful in this role, you will: Leverage knowledge of data structures, algorithms, and design patterns to write software in a full-stack Java & web technology environment, including but not limited to Gradle, JDBC, Hibernate, Spring, Kafka, Quartz, Typescript, Redux and React. Utilize both object-oriented as well as functional programming approaches in different technologies to implement features effectively. Leverage relevant software development experience to radiate best practices and faster development. Manage availability, latency, scalability and efficiency of the product by designing reliability into software and systems. Troubleshoot, investigate and diagnose incidents using a combination of tracing, alerting and log analysis. Contribute to software performance analysis and system tuning. Be a key contributor to team feature breakdowns/sizing and design of new feature implementations. Have a high degree of personal responsibility for the overall performance of the team, including capabilities, quality, stability and velocity. Perform code reviews which provide feedback not only on code quality, but on design and implementation. Respond to and resolve emergent problems; write software and build automation to prevent problem recurrence with tools such as JUnit, Spock, Jest, Jaeger, and/or Locust. Seek to identify opportunities for code refactoring and performance optimizations regularly and champion these efforts within the team. Mentor junior software engineers by sharing best-practices and providing guidance on how to become more proficient. Share advanced knowledge regularly on a team and occasionally with others in the department; build a reputation as a key resource in those areas. Effectively communicate technical designs verbally and/or in writing for small to medium sized technical audiences. Contribute to Appian's long-term documentation through publishing relevant, high-quality content to Engineering's technical documentation site. Basic Qualifications: 8+ years experience building and delivering enterprise grade software applications. You’re a tinkerer at heart with an innate ability to solve tough system problems. Strong knowledge of and experience with various types of database systems, access patterns and query optimization. Experience in CI/CD in Cloud environments, like AWS and continuous integration systems, like gitlab pipelines. Experience in service-oriented architecture, containerization and Kubernetes. You thrive on solving labyrinthine problems within large, high-performance, real-time, distributed data systems. BS in Computer Science or related technical discipline. MS in Computer Science preferred. Demonstrable understanding of systems, algorithms, OO design, and web API design. You have been a strong contributor to breakdowns/sizing and design of new feature implementations. You value agile delivery of high-quality software.

#J-18808-Ljbffr