Similar jobs
About Sun King
Sun King is the world’s leading off-grid solar energy company, providing affordable solar solutions to the 1.8 billion people without reliable access to electricity. By combining product design, fintech, and field operations, Sun King has connected over 20 million homes to solar power across Africa and Asia, adding more than 200,000 new homes each month. Through ‘pay-as-you-go’ financing, customers make small payments to eventually own their solar systems, saving money and reducing reliance on harmful energy sources like kerosene.
Sun King employs 2,800 staff across 12 countries, with expertise in product design, data science, logistics, customer service, and more. The company is expanding its product range to include clean cooking, electric mobility, and entertainment solutions, all while supporting a diverse workforce — with women making up 44% of the team.
About the role
The Senior Software Developer - Backend will work as part of the Digitization and Automation team to support Sun King design, develop, and implement intelligent, tech-enabled solutions to help solve a large variety of our business problems. We are looking for candidates with an affinity for technology and automations, curiosity towards advancement in products, and strong coding skills for our in-house software development team.
What you will be expected to do:
- Design and build applications/systems based on wireframes and product requirements documents.
- Design and develop coherent and physical data models to meet application requirements.
- Identify and correct bottlenecks/bugs according to operational requirements.
- Focus on scalability, performance, service robustness, and cost trade-offs.
- Create prototypes and proof-of-concepts for iterative development.
- Take complete ownership of projects (end to end) and their development cycle.
- Mentoring and guiding team members.
- Unit test code for robustness, including edge cases, usability, and general reliability.
- Integrate existing tools and business systems (in-house tools or business tools like ticketing software and communication tools) with external services.
- Coordinate with Product Manager, development team, & business analysts.
You might be a strong candidate if you have/are:
- A minimum of 4 years of experience.
- Deep knowledge of OOPS concepts and programming skills in Core Java, Spring Framework.
- Experience in web service development and integration (SOAP, REST, JSON, XML).
- Should be very strong in problem solving, data structures, and algorithms.
- Strong experience in SQL.
- Experience in the AWS suite (Ec2, RDS, Lambda, API Gateway).
- Experience in scripting languages like Python.
- Experience in Microservice Architecture.
- Prior managing/mentoring experience.
- Knowledge of best software engineering practices for all stages of the software development life cycle, including coding standards, code reviews, testing, and deployment.
Good to have:
- Knowledge on messaging systems RabbitMQ, Kafka.
- Container-based application deployment (Docker or equivalent)
- Willing to learn new technologies and implement them in products.
What Sun King offers:
- Professional growth in a dynamic, rapidly expanding, high-social-impact industry.
- An open-minded, collaborative culture made up of enthusiastic colleagues who are driven by the challenge of innovation towards profound impact on people and the planet.
- A truly multicultural experience: you will have the chance to work with and learn from people from different geographies, nationalities, and backgrounds.
- Structured, tailored learning and development programs that help you become a better leader, manager, and professional through the Sun King Center for Leadership.
- Bachelor's or Master’s degree in Computer Science or equivalent area
- 10 to 20 years of experience in software development
- Hands-on experience designing and building B2B or B2C products
- 3+ years architecting SaaS/Web based customer facing products, leading engineering teams as software/technical architect
- Experiences of engineering practices such as code refactoring, microservices, design and enterprise integration patterns, test and design-driven development, continuous integration, building highly scalable applications, application and infrastructure security
- Strong cloud infrastructure experience with AWS and/or Azure
- Experience building event driven systems and working with message queues/topics
- Broad working experience across multiple programming languages and frameworks with in-depth experience in one or more of the following: .Net, Java, Scala or Go-lang
- Hands-on experience with relational databases like SQL Server, PostgreSQL and document stores like Elasticsearch or MongoDB
- Hands-on experience with Big Data processing technologies like Hadoop/Spark is a plus
- Hands-on experience with container technologies like Docker, Kubernetes
- Knowledge of Agile software development process
Responsibilities:
Skills:
- Strong knowledge of PHP web frameworks {such as Laravel, CI, etc depending on your technology stack}
- Understanding the fully synchronous behavior of PHP
- Understanding of MVC design patterns
Technical Skills Preference
- PHP Laravel
- Javascript
- Jquery,
- CSS,
- HTML
- Following optional skill (good to have)
- MongoDB,
- Node js
- Must know the use of multi_curl for parallel multiple API processing.
-
Understanding of SDLC & OOPs concepts.
-
Must have experience with ASP.NET with C#
-
Good knowledge of SQL server / POSTGreSQL database
-
Basic Knowledge of javascript, JQuery, CSS, HTML5, Bootstrap
-
Ability to design Web architecture.
-
Ability to bug fixing in existing projects.
-
Knowledge of functions, procedure, triggers.
-
Ability to write optimized sql query.
-
Good knowledge of developing Desktop Application
-
Knowledge of WCF, Web Services and file management.
-
Knowledge of digital signature is preferred.
Roles And responsibilities-
-
Should be able to work in a team environment.
-
Strong in Software Development and Problem Solving Skills.
-
Design, Develop and Unit Test software independently.
-
Also should be able to understand the existing applications and should be in position to reengineer the codes to latest .Net technologies.
-
Freshers: Should have B.Tech background and should have strong in problem solving skills.
Required Skills:
- 2+ year of experience in Development in JAVA technology.
- Strong Java Basics
- SpringBoot or Spring MVC
- Hands on experience on Relationl Databases (SQL query or Hibernate) + Mongo (JSON parsing)
- Proficient in REST API development
- Messaging Queue (RabitMQ or Kafka)
- Microservices
- Any Caching Mechanism
- Good at problem solving
Good to Have Skills:
- 4+ years of experience in using Java/J2EE tech stacks
- Good understanding of data structures and algorithms.
- Excellent analytical and problem solving skills.
- Ability to work in a fast paced internet start-up environment.
- Experience in technical mentorship/coaching is highly desirable.
- Understanding of AI/ML algorithms is a plus.
As a senior software engineer, you'll be the brain behind crafting, developing, testing, going live and maintaining the system. You are passionate in understanding the business context for features built to drive better customer experience and adoption.
Responsibilities
Participate in code reviews and make sure quality code gets shipped to production.
Design and develop architecture of new features.
Familiar with the software development life cycle (SDLC) from analysis to deployment.
Comply with coding standards and technical design.
Believes in systematic approach to developing the system through clear documentation (flowcharts, layouts, etc) of functionality, address every use case through creative solutions.
Adapts structured coding styles for easy review, testing and maintainability of the code.
Integrate the developed functionality and/or component into a fully functional system.
Ensure unit and integration level verification plan are in place and adheres to great quality of code at all time.
Active participate in troubleshooting, debugging and updating current live system.
Verify user feedback in making system more stable and easy.
Work closely with analysts, designers and other peer developers.
Preparing technical training documents for onboarding new engineers.
Requirements
Bachelor's degree in computer science or equivalent practical experience.
3+ years of experience as Software Engineer or Software Developer or in a relevant role.
Understanding of OOPS concepts, Persistence, Threading.
Proficient in JavaScript and Node JS based frameworks.
Hands-on with SQL.
Knowledgeable in data structures and algorithms.
Experience with open-source projects is preferred.
A background in Engineering with sound oral and written communication skills.
Prior experience with AWS will be a plus.
Desired Skills and Experience
Node.js,PostgreSQL
Good to have skills
Express.js,JavaScript,Typescript
Company Profile
We have been helping the world's leading companies like Atlan Data, Accryl, Chronosphere, Benlabs, Sprinto, MindsDB, TestRigor in scaling customer support, engineering escalations and IT helpdesk on Slack.
We were founded by experienced managers and second-time entrepreneurs and are based out of Bangalore, India.
"Company" converts Slack channels into a single queue of requests, uses AI to flag requests that need a response, allows responders to update status of requests and assign ownership and make sure all requests are closed out. Integrations with tools like Zendesk, Jira, Freshdesk, Salesforce et al allow agents to handover or link Slack requests to other enterprise tools and close the loop back on Slack when issues are solved therein.
Funding
8VC and Angels*
*Angels Investors: Anoop Dawar, Dilip Khandelwal, Gaurav Bubna and Marcy Campbell
- Bachelor’s degree in computer science, engineering, or a related field.
- At-least more than 1+ Years of Experience in a similar role would be desired.
- Excellent technical, diagnostic, and troubleshooting skills.
- Strong leadership skills to drive good coding and design practices across multiple engineering teams
- Willingness to build professional relationships with staff and clients.
- Excellent communication, motivational, and interpersonal skills.
- Expertise in architecting, building, and maintaining ultra-low latency, cost-efficient systems in cloud environments
- Excellent track record in modernizing cloud-based applications using micro services, containers, and other architectures
- Experience and working knowledge in building large-scale, data-intensive Text search applications using Solr / Elastic Search is a Must
- Experience and working knowledge of AI/ML/ML Ops with respect to building large-scale, data-intensive applications would be a Plus
- Experience and working knowledge in building Java based Spring Boot micro-services integrated with any messaging framework
- Driven, Highly-motivated and passionate towards development & innovation
- Determining project requirements and developing work schedules for the team.
- Delegating tasks and achieving daily, weekly, and monthly goals.
- Liaising with team members, management, and clients to ensure projects are completed to standard.
- Identifying risks and forming contingency plans as soon as possible.
- Analyzing existing operations and scheduling training sessions and meetings to discuss improvements.
- Keeping up-to-date with industry trends and developments.
- Updating work schedules and performing troubleshooting as required.
- Motivating staff and creating a space where they can ask questions and voice their concerns.
- Being transparent with the team about challenges, failures, and successes.
- Writing progress reports and delivering presentations to the relevant stakeholders.
- Extremely hands-on in delivering Development and R&D tasks
- Design, plan and perform dev-analysis to determine effort estimates on every sprint for the team
- Running Demo's, ensuring thorough documentation of the features built
- Identify & Plan upgrades to technologies & frameworks from time-to-time
At Embibe, we have just one mission - to truly personalize education. Because every child deserves it. This has led us to embark on this noblest of journeys to deliver life and learning outcomes for every student! Rooted in consumer behavior, we are leveraging AI and Data Science to deliver personalized achievement journeys for every student.
We are a tribe of intellectually fierce people from diverse backgrounds, focused on building cutting-edge products that empower everyone in the education ecosystem - students, teachers, educational institutes and parents. We enable a deeper understanding of student behavior, their strengths and weaknesses through analysis at a granular level. It is this shared vision of democratizing and personalizing education that unites us all.
Embibe is powered by AI and data science algorithms, using these contents being recommended across platforms and millions of learning outcomes delivered to students. Since its inception, millions of students have used the imbibe platform for learning concepts and outcomes. Academic users have spent 52mins on average with an average of 3 sessions daily. Embibe has been launched for 12 languages across India with support for 361 Exams (English), and 120 Exams (Hindi) for K6-K12 having 22.6L+ Qs and 58k+ Tests, 29k videos, 50k+ 3D assets. Embibe is the world's largest live online public sector implementation in edtech for test preparation, NTA app which is powered by Embibe has 3.1Mn+ downloads, and 14.3Mn hours spent by users with total 13.4Mn sessions and 1.64Bn attempts.SchoolApp is currently being used by 1000s of schools across India and we are planning to scale it to 100Mn students with 1Mn schools with 10Mn teachers in the period of the next 3yrs.
Prerequisite
We are looking for a Software Engineer across levels who have ever contributed to any large-scale systems be it content platform e.g. Quora/Medium, streaming platform e.g. Netflix or Hotstar, activity log system e.g. Twitter feeds or payment systems like Razorpay to name a few. I/O, Read-Writes, DB connections, Distributed Locking, Memory, Bandwidth, High Throughput, Low Latency and minimal CPU cycles excite you!! You are deep thinkers and can bring ideas to the table, before starting writing the code!!
Interested? We'd love to hear from you.
Who are you?
● 2-14yrs years of relevant large-scale product company experience ideally in a fast-moving B2C/B2B environment.
● Programming. Proficiency in object-oriented and multi-threaded programming in at least one of the following languages: Java, Python,React.js, Node.js, Next.js, PHP, Golang etc.
● Deep understanding & experience of high-performance web-scale & real-time response systems, and large scale distributed systems.
● CS Fundamentals – exposure to a wide variety of problem spaces, Good in Data Structures and Algorithms Design, Problem Solving.
● Open source contributors and can do quick POC of technologies will catch our eyes.
● Expertise in designing, implementing and operating distributed Systems architectures and concepts, especially on public cloud infrastructure (AWS/Azure)
● Demonstrated expertise in applying systems patterns (e.g., Client-server, N-tier, Master/Slave, MVC) and API constructions (e.g., Swagger, OpenAPI).
● Experience in a high-availability 24/7 environment (cloud platforms are a plus). Expertise should include several of the following:
○ High-performance,up-time (99.999%) and self-recoverable systems.
○ Control, orchestration and automation platforms leveraging containers or VMs. ○ RPC frameworks (e.g., Protobuf/gRPC, Thrift, Bond)
● Experience with one or more Data Stores like (MySql, Postgres ) and NoSQL DataStores ( Mongo, Cassandra, Scylladb, Hbase, Redis, Aerospike etc.).
● Experience with Agile software development, TDD, and Continuous Integration. ● Experience in building Web/RESTFul/GraphQL services.
● Sound knowledge of *Nix, ORM(Hibernate, JPA), Spring ecosystem, Messaging platforms like Kafka/RMQ, build framework like Maven/Gradle etc.
● Very strong system design and object-oriented skills with a nifty ability to craft clean interfaces and operate at the right levels of abstraction.
● Solid coding skills with the ability to drive teams through massive refactoring exercises & improve coding standards across large code bases.
● Deep knowledge, understanding & experience of working with a large variety of multi-tier architectures. Awareness of pitfalls & use cases for a large variety of solutions. ● Exposure to complete product development cycles – from inception to production to scaling up, supporting new requirements, and re-architectures.
● Having experience building web infrastructure in cloud environments (such as AWS or Azure/GCP) is a plus. You understand and are always excited about learning new e.g.docker, Kubernetes.
● Education. M.Tech/M.Eng in Computer Science/Engineering or B.Tech/B.E in the same disciplines with equivalent years of experience would be a plus.
We'd particularly love it if:
● You’re a steward for engineering quality, reliability, scalability, availability, maintainability, flexibility habits and mindset in the organization under your purview, You know SOLID,12 factor App and Design Principles which you can apply or help the team in applying as needed. You can assure that our architectures are consistent with industry best practices. ● Version control tools like Git, SVN etc are good to have.
● Gather, understand, and prioritize requirements, research potential solutions, rapidly build prototypes, and distill and communicate what was learned, expected risks, resources & security concerns.
● Mentoring more junior engineers to instill engineering best practices and driving high standards in documentation, code reviews, design reviews, architecture discussions and strategy roadmap development.
● Actively participate in development along with team members - creating modules & systems that can then be treated as a working reflection of the best practices.
● Set the vision of the domain architecture and technology stack for technology in your organization, You understand LLD and HLD.
● Be an evangelist for technology - drive a culture of curiosity and active debate around technology in your organization.
● Experiment with new & relevant technologies and tools, and drive adoption while measuring yourself on the impact you are able to create.
Note: We just use degrees to measure the Temperature!!
Position Responsibilities:
1. Design, implementation, and deployment of applications
2. Expert knowledge in performance, scalability, enterprise system architecture, and engineering best practices.
3. Functionally decompose complex problems into simple, straight-forward solutions.
4. Work extensively with cross-functional teams across.
5. Work with the business team and project managers to convert functional requirements into detailed technical specifications.
6. The ideal candidate will be a leader, builder, and operator. He/she should be able to operate in a very fast-paced environment where time to hit the market is supercritical.
Desired Candidate profile:
1. A Bachelor's/Master’s degree in Computer Science or equivalent combination of technical education from Elite College or institution and work experience.
2. 4+ years of Software Development experience.
3. Excellent object-oriented design and coding skills (Java, C++ on a UNIX or Linux platform).
4. Very strong software development background including design patterns, data structures, test-driven development.
5. Ability to design and implement systems end to end on your own while maintaining highest coding standards.
6. Excellent knowledge of design patterns and ability to reflect it in their code.
7. Ability to lead projects and mentor junior engineers on the same.
8. Mandatory work experience in skills sets: REST API, JDBC, RDBMS (PostgreSQL, MySQL)
9. Solid Experience with distributed (multi-tiered) systems, algorithms, and relational databases.
10. Software development experience in Servlet, JSP, Spring, AWS, S3, SQS, building web services and highly scalable applications or Google Cloud Suite.
11. Excellent verbal and written communication skills.