At Anaplan, we are a team of innovators who are focused on optimizing business decision-making through our leading scenario planning and analysis platform so our customers can outpace their competition and the market.
What unites Anaplanners across teams and geographies is our collective commitment to our customers’ success and to our Winning Culture.
Our customers rank among the who’s who in the Fortune 50. Coca-Cola, LinkedIn, Adobe, LVMH and Bayer are just a few of the 2,400+ global companies that rely on our best-in-class platform.
Our Winning Culture is the engine that drives our teams of innovators. We champion diversity of thought and ideas, we behave like leaders regardless of title, we are committed to achieving ambitious goals and we have fun celebrating our wins.
Supported by operating principles of being strategy-led, values-based and disciplined in execution, you’ll be inspired, connected, developed and rewarded here. Everything that makes you unique is welcome; join us and be your best self!
We are seeking a Senior Software Engineer to join our team in York!
Your Impact:
* Software Development: Design, implement, and maintain scalable, maintainable, and efficient Python-based applications, focusing on backend and full-stack development.
* Collaboration & Communication: Work closely with product managers, designers, and other engineers to understand requirements and deliver solutions that meet business goals.
* Code Quality & Testing: Write clean, efficient code and ensure robust testing practices. Contribute to code reviews, ensuring adherence to best practices for test-driven development (TDD) and maintaining high code quality.
* Mentorship & Leadership: Provide technical mentorship to junior and mid-level engineers. Guide the team in coding practices, architecture decisions, and problem-solving approaches.
* Debugging and Optimization: Troubleshoot and debug production issues. Optimize applications for performance and responsiveness.
* Stay Up to Date with Technology: Keep yourself and the team updated on the latest Python technologies, frameworks, and tools like Apache Spark, Databricks, Apache Pulsar, Apache Airflow, Temporal, and Apache Flink, sharing knowledge and suggesting improvements.
* Documentation: Contribute to clear and concise documentation for software, processes, and systems to ensure team alignment and knowledge sharing.
Your Qualifications:
* Experience: Professional experience in Python development or related software engineering roles.
* Python Proficiency: Strong knowledge of Python, including experience with web frameworks like Django, Flask, or FastAPI.
* Database Management: Solid experience with relational databases like PostgreSQL or MySQL and familiarity with NoSQL databases like Redis.
* Distributed Systems: A basic understanding of distributed systems and microservices architecture, as well as cloud-based infrastructure (AWS, GCP, Azure), is a plus.
* Version Control: Experience with Git and familiarity with CI/CD pipelines (e.g., Jenkins, GitLab CI).
* Testing and Debugging: Experience with testing tools like pytest, unit tests, and debugging skills to quickly resolve issues.
* API Design: Strong knowledge of RESTful API design and implementation; knowledge of GraphQL is a plus.
* Security Best Practices: Awareness of security best practices in software development.
* Team Collaboration: Strong communication skills and the ability to collaborate effectively with cross-functional teams.
* Cloud Services: Experience with cloud platforms like AWS, GCP, or Azure.
* DevOps Tools: Familiarity with containerization (Docker) and infrastructure automation tools like Terraform or Ansible.
* Real-time Data Streaming: Experience with Apache Pulsar or similar systems for real-time messaging and stream processing is a plus.
* Data Engineering: Experience with Apache Spark, Databricks, or similar big data platforms for processing large datasets, building data pipelines, and machine learning workflows.
* Workflow Orchestration: Familiarity with tools like Apache Airflow or Temporal for managing workflows and scheduling jobs in distributed systems.
* Stream Processing: Experience with Apache Flink or other stream processing frameworks is a plus.
Desired Skills:
* Asynchronous Programming: Familiarity with asynchronous programming tools like Celery or asyncio.
* Frontend Knowledge: Exposure to frontend frameworks like React, Angular, or Vue.js for full-stack development is a plus.
* Event-Driven Architecture: Experience with event-driven architectures or message queuing systems (e.g., Kafka, RabbitMQ) is beneficial.
* Education: A degree in Computer Science, Engineering, or a related field is preferred but not required.
J-18808-Ljbffr