Software Engineer II - Python Developer

Engineering India


Description

Uplight is the market-leading customer engagement, enrollment, and load flexibility platform for energy utilities. Uplight’s platform connects people, products, services, and other platforms to the energy grid and each other to power the clean energy transition, accelerate decarbonization, reduce costs, and positively impact communities.
The Position
We are seeking a seasoned engineer with a passion for changing the way millions of people save energy. You’ll work within the Engineering team to build and improve our platforms to deliver flexible and creative solutions to our utility partners and end users and help us achieve our ambitious goals for our business and the planet. 

 

We are seeking a skilled and passionate Software Engineer II expertise in Python to join our development team. As a SE II Python Developer, you will be a crucial member of our development team, responsible for leading and driving the development of complex, scalable, and high-performance Python-based applications. One of your main focus will be on developing and supporting efficient, reusable and highly scalable APIs & components to deliver a compelling experience to users across platforms. You will collaborate with cross-functional teams, mentor junior developers, and coordinate with the rest of the team working on different layers of the infrastructure. Therefore, a commitment to collaborative problem solving, sophisticated design, and quality product is important. You will take part in the planning and strategy to come up with the solutions with full ownership. 

 

You will own the development and its quality independently and be responsible for high quality deliverables. And you will work with a great team with excellent benefits.
Responsibilities & Skills
You should: 
  • Design, develop, and maintain high-quality software applications using Python and the Django framework.
  • Collaborate with cross-functional teams to define, design, and ship new features and enhancements.
  • Integrate third-party APIs (REST, SOAP, streaming services) into the existing product.
  • Optimize application performance and ensure scalability and reliability.
  • Write clean, maintainable, and efficient code, following best practices and coding standards.
  • Participate in code reviews and provide constructive feedback to peers.
  • Troubleshoot and debug applications, identifying root causes of issues.
  • Stay current with industry trends, technologies, and best practices in software development.
Required Skills (Python): 
  • Bachelor’s or Master’s degree in Computer Science or related field from IIT, NIT, or any other reputed institute.
  • 5-7 years of experience in software development, with at least 4 years of background in Python and Django.
  • Experience integrating third-party APIs (REST, SOAP, streaming services) into applications.
  • Familiarity with database technologies, particularly MySQL and HBase.
  • Experience with message brokers like Kafka, Rabbitmq and Redis
  • Experience on Version control systems such as Github
  • Familiarity with RESTful APIs and integration of third-party APIs.
  • Strong understanding of software development methodologies, particularly Agile.
  • Demonstrable experience with writing unit and functional tests 
  • Excellent problem-solving skills and ability to work collaboratively in a team environment.
  • Experience with database systems such as PostgreSQL, MySQL, or MongoDB.
The following experiences are not required, but you'll stand out from other applicants if you have any of the following, in our order of importance: 
  • Experience with cloud infrastructure like AWS/GCP or other cloud service provider experience 
  • Serverless architecture, preferably AWS Lambda 
  • Experience with PySpark, Pandas, Scipy, Numpy libraries is a plus Experience in microservices architecture
  • Solid CI/CD experience 
  • You are a Git guru and revel in collaborative workflows 
  • You work on the command line confidently and are familiar with all the goodies that the linux  toolkit can provide 
  • Knowledge of modern authorization mechanisms, such as JSON Web Token
  • Good to have front end technologies like - ReactJS, NodeJS

 

Qualifications
  • Bachelor's or Master's degree in Computer Science, Engineering, or a related field.