Software Developer
Summary
Develops and maintains scalable software applications using languages like Java or Python, collaborating across teams to deliver high-quality solutions with modern front-end and cloud technologies.
Job Summary
You will design, develop, implement, and maintain scalable software applications while collaborating with cross-functional teams throughout the full software development lifecycle to deliver high-quality solutions.
Responsibilities- Design, develop, and implement modern software applications that meet business and customer requirements
- Participate in all phases of the software development lifecycle, including requirements gathering, design, development, testing, deployment, and maintenance
- Write clean, efficient, maintainable, and well-documented code following industry best practices
- Conduct code reviews and contribute to software architecture and design discussions to improve system quality
- Troubleshoot, debug, optimize, and maintain software applications to ensure high performance and reliability
- Gather and analyze user feedback to enhance functionality and improve user experience
- Develop intuitive user interfaces to increase application usability
- Collaborate effectively with developers, product managers, designers, and business stakeholders to align software solutions with business goals
- Perform unit, integration, and system testing to ensure software quality
- Utilize automated testing frameworks to increase testing efficiency and coverage
- Integrate third-party APIs and software components to extend application capabilities
- Provide timely technical support and resolve software issues to minimize downtime
- Prepare comprehensive technical documentation and user guides to support software usage and maintenance
- Deliver user training sessions to facilitate adoption of software solutions
- Stay current with emerging technologies and industry best practices to drive continuous improvement
- Identify and implement opportunities to improve software quality, development processes, and system scalability
- Proficiency in programming languages such as Java, Python, C++, C#, JavaScript, or similar, applied to develop and maintain software applications
- Experience with front-end technologies including HTML, CSS, JavaScript frameworks (React, Angular, Vue.js), or .NET for building responsive user interfaces
- Experience managing databases such as MySQL, PostgreSQL, MongoDB, or similar for data storage and retrieval
- Familiarity with Git version control to manage source code and collaborate with development teams
- Understanding of Agile/Scrum methodologies and software development lifecycle (SDLC) to support iterative development
- Mobile application development experience to extend software reach to mobile platforms
- Knowledge of containerization (Docker), orchestration (Kubernetes), networking, and cloud platforms (AWS, Azure, Google Cloud) to support scalable deployments
- Strong analytical and problem-solving skills applied to diagnose and resolve software issues
- Effective communication and teamwork skills to collaborate across diverse teams and stakeholders
- Willingness to travel occasionally as required
- Commitment to continuous learning and adapting to changing technologies and business needs
- Professional attitude with strong ownership and accountability
- Comfortable working with colleagues and stakeholders across different functions and cultures