About the Position FiscalNote is looking for an experienced Senior Software Engineer to join our Data Engineering team. The person in this role will help scale and improve our core data processing capabilities by designing, building, and supporting services for collecting, ingesting, augmenting, and maintaining one of the largest collections of unstructured and structured data relating to policy, policymakers, and governments across countries and levels of government. The Data Engineering team at FiscalNote makes a diverse and growing dataset of documents accessible and actionable. Our data backend interacts with sources that are frequently brittle and obsolete in order to provide reliable, timely, and accurate information - at scale. As part of the team, you will design systems that integrate and work closely with partners in applications and data science to provide our customers with an unprecedented level of automated analysis.
About Data Engineering at FiscalNote
Our Data Engineering team is responsible for everything from assisting in identifying the datasets that we want to offer through ingesting, processing, augmenting, and making them available to clients and applications. We maintain the quality and usability of the growing amount of unstructured and structured external data relating to policy and government action in the legislative and regulatory space that powers and serves as one of the foundations of our products.
Looking to build something worth being proud of. Ready to take on ambitious projects that stretch the limits of your abilities, you enjoy the process of collaborating with team members to overcome technical challenges. You see projects through to the end and ensure that the best decisions for the team, not necessarily your ideas, are what take precedence. Along the way, you’re capable of communicating what you’re thinking to both technical and non-technical audiences, taking in others’ ideas as well as expressing your own. You delight in finding ways to use your strengths for maximum impact. You’re guided equally by your own intuition and delivering the best results to the customer. You’re comfortable around ambiguity with a high degree of autonomy, and are excited about solving complex, open-ended problems by distilling the complexity as simply as necessary to build solutions that work.
Success In This Role Includes:
- Design, communicate, and lead development of solutions to complex problems, serving as the lead on projects and providing guidance to team members
- Bring out the best in your coworkers through thoughtful idea-sharing and supporting knowledge and skill growth whenever possible
- Evaluate technical choices and their trade-offs, including discussing trade-offs with team members and explaining them to leadership
- Write clean, robust, and maintainable code
- See projects through to the end and ensure best decisions for the team, not necessarily your ideas, are what take precedence
- Identify opportunities to improve our codebase
- Build data services for batch and real-time data processing
- Enhance data pipeline health and quality monitoring
- Create tooling for data review and augmentation
What Sets You Apart:
- Experience working in iterative development environment, serving as a technical project lead and supporting the successful completion of projects in collaborative teams
- Strong programming skills, Python preferred
- Working knowledge of git and AWS
- SQL experience is required and nice to have ElasticSearch experience
- Knowledge or experience working with CI/CD pipeline
- Experience designing data models to support product features in a scalable way
- Strong understanding of effective software development practices
- Ability to lead and guide junior developers within the team
- Familiarity with dependency injection and asynchronous programming a plus