

Job Description:
We are looking for a Python Web Developer responsible for managing the interchange of data between the server and the users. Your primary focus will be the development of all server-side logic, ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements built by your co-workers into the application; therefore, a basic understanding of front-end technologies is necessary as well.
Responsibilities:
- Writing reusable, testable and efficient code.
- Design and implementation of low-latency, high-availability, and performant applications.
- Integration of user-facing elements developed by front-end developers with server side logic.
- Implementation of security and data protection.
- Integration of data storage solutions (may include databases, key-value stores, blob stores, etc.)
Skills And Qualifications:
- Expert in Python, with knowledge of at least one Python web framework (such as Django, Flask, etc depending on your technology stack).
- Familiarity with some ORM (Object Relational Mapper) libraries.
- Able to integrate multiple data sources and databases into one system.
- Understanding of the threading limitations of Python, and multi-process architecture.
- Good understanding of server-side templating languages.
- Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3.
- Understanding of accessibility and security compliance (depending on the specific project).
- Knowledge of user authentication and authorization between multiple systems, servers and environments.
- Understanding of fundamental design principles behind a scalable application.
- Familiarity with event-driven programming in Python.
- Understanding of the differences between multiple delivery platforms, such as mobile vs desktop, and optimizing output to match the specific platform.
- Able to create database schemas that represent and support business processes.
- Strong unit test and debugging skills.

About WorksDelight
Similar jobs
Job Description
Build and maintain bots on Azure platform. Integration with Active directory, WEB API based integration with external systems. Training and Integrate bots as per users’ requirements. Work in line with design guidelines, best practices and standards of bot deliverable. Creative approach to the conversation flow design, human aspects in the bot responses and sentiments
Qualifications
- a) 5 years of experience in software development with clear understanding of the project life cycle
b) Min 2-3 years of hands-on experience in Microsoft Azure Bot Framework , LUIS and other Cognitive services offered by Azure
c) Hands on experience with Machine Learning based chat bots
d) Experience with Azure bot services like Text Analytics etc.
e)Strong database skills and hands-on experience on databases like SQL Server/Oracle - f) Strong experience on Azure Active directory and adaptive cards integration in Chat bot.
- g) Strong experience designing and working with
with service-oriented architectures (SOA) and WebAPIs.
- h) A strong experience on Microsoft Azure, ASPNET / MVC and programming languages such as C# / VBNET
- i) Knowledge of Python and NodeJS is a plus
- j) Ability to design and optimize SQL Server 2008 stored procedures.
- k) Experience with JQuery, CSS3, HTML5 or similar technologies.
- l) Ability to adapt quickly to an existing, complex environment.


Skills And Qualifications
- Expert in Python, with knowledge of at least one Python web framework (such as Django, Flask, etc depending on your technology stack)
- Familiarity with some ORM (Object Relational Mapper) libraries
- Able to integrate multiple data sources and databases into one system
- Understanding of the threading limitations of Python, and multi-process architecture
- Good understanding of server-side templating languages (such as Jinja 2, Mako, etc depending on your technology stack)
- Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3
- Understanding of accessibility and security compliance (depending on the specific project)
- Knowledge of user authentication and authorization between multiple systems, servers, and environments
- Understanding of fundamental design principles behind a scalable application
- Familiarity with event-driven programming in Python
- Understanding of the differences between multiple delivery platforms, such as mobile vs desktop, and optimizing output to match the specific platform
- Able to create database schemas that represent and support business processes
- Strong unit test and debugging skills
- Proficient understanding of code versioning tools (such as Git, Mercurial or SVN)
- (Make sure to mention other frameworks, libraries, or any other technology related to your development stack)
- (List education level or certification you require)


Roles & Responsibilities:
- Excellent problem-solving & analytical skills & OO principles
- Solid understanding of the data structure & algorithms.
- Expert knowledge with any one of the Javascript Framework such as Node Js.
- Any additional experience with Java or python, GoLang would be nice to have.
- Experience working with SQL database like MySQL or PostgreSQL
- Experience working with NoSQL databases like mongoDB, couchbase would be nice to have
- Working experience with cache like redis, mem cached or elasticache would be nice to have
- Working experience with Message Queues would be a great advantage.
- Experience with deployment & AWS would be nice to have
- Ability to do in depth analysis or problem statement or use case & Build robust & scalable architecture
- Logging & monitoring of the production system in real time
- Lead a team of 2-4 team members & make sure team practices defined coding practices across the project.

- The developer should be well conversant with principles of clean codeand refactoring practices.
- The developer should have experience writing unit and integration tests.
- The developer should be conversant with agile development practices.
- Prior experience in Python is a good to have but the developer should be willing to do development in Python.
- The developer is expected to collaborate with developers from other teams as well as business stakeholders in India and in US to design and develop business requirements.






About MoEngage
MoEngage is a fast-paced startup that’s helping companies run smart marketing efforts in their effort to reach the customer. We are a leading Marketing Technology Stack provider that is helping brands redefine their customer engagement in the mobile era. Brands use MoEngage to drive long-term, personalised and context-based engagement across channels to help achieve increased customer retention as well as customer LTV. Sitting at a conflux of diverse technologies like Artificial Intelligence, Big Data, Web & Mobile platforms, MoEngage technology analyses billions of data points generated by customers and their devices, to predict customer behavior and build marketing campaigns that proactively engage users.
In just four years since inception, MoEngage is working with leading brands across e-commerce, entertainment, travel, publishing and banking domains among others. With marquee clients like Vodafone, Oyo, Airtel, McAfee, MoEngage has over 125+ paying Customers in the Enterprise & Internet companies space in India, US, South East Asia & EU. With a global presence spanning 35 countries, MoEngage has offices in San Francisco, Berlin, Jakarta, and Bengaluru.
Today, MoEngage is an industry pioneer in the space and engages more than 350M devices. This includes approximately 40B events tracked per month, 30B+ messages sent, to millions of users across the globe.
As part of the Engineering team at MoEngage, here are some things you can expect:
- Take ownership and be responsible for what you build - no micro management
- Work with A players (some of the best talent in the country), and expedite your learning curve and career growth
- Make in India and build for the world at scale of 350M active users, which no other internet company in the country has seen
- Learn together from different teams on how they scale to millions of users and billions of messages.
- Explore the latest in topics like Data Pipeline, MongoDB, ElasticSearch, Kafka, Spark, Samza and share with the team
and more importantly have fun while you work on scaling MoEngage.
About Push team,
Push team is one of the core teams at MoEngage, responsible for sending close to a billion notifications everyday to help clients engage their users better. As a member of the Push team, you will be working on developing high performance solutions to deliver personalised and context-based notifications across various channels to help achieve increased customer retention as well as customer LTV. You will also be working on designing and building features to help clients to provide customised experience for end users allowing them to have a more personalised experience at scale. Here you will have a chance to own systems and develop features end to end i.e right from inception to deployment. Though we work at scale, reliability is of utmost importance for us and we build in house solutions like Campaign Watcher & AutoBatchRunner to ensure 100% transparency and delivery of notifications
- Scaling campaign sending system to ensure industry leading delivery times (40 Million notifications under 2 minutes)
- Rich campaign content delivery and templating support
- Build and develop features to have appealing and consistent experiences across channels which touch 200+ customers and 200+ million users!
Skill Requirements
- Proven experience in handling large infrastructure and distributed systems
- Familiarity with Python related technologies and frameworks like Django or Pyramid.
- Familiarity with at least one of the cloud computing infrastructure - GCP / Azure / AWS
- Familiarity with task queue frameworks like Celery or Pika is a plus.
- Tech Stack - Python, Falcon, Elastic Search, MongoDB, AWS (SQS S3), Linux, Map Reduce










