Roles and responsibilities
The Developer will provide effective technical assistance to our clients/employees and will provide back up and support to the IT manager. The position is responsible for installing, upgrading, and troubleshooting hardware and software systems. To succeed in this role, the candidate should have a problem-solving attitude along with the ability to give clear technical instructions. The candidate should also be familiar with remote troubleshooting techniques.
Responsibilities
- Requirements Gathering: Collaborating with stakeholders to understand their needs and requirements for a particular system or software solution.
- System Design: Translating business requirements into technical specifications, including designing system architecture, data models, and workflows.
- Prototyping: Creating prototypes or mock-ups to demonstrate proposed solutions and gather feedback from stakeholders.
- Software Selection: Evaluating existing software solutions or vendors to determine their suitability for meeting business needs.
- System Integration: Ensuring that new systems or software solutions integrate seamlessly with existing infrastructure and systems.
- Testing and Quality Assurance: Developing test plans and conducting testing to ensure that systems meet functional and performance requirements.
- Documentation: Creating and maintaining documentation for systems, including technical specifications, user manuals, and training materials.
- Training and Support: Providing training to users and support staff on new systems or software solutions.
- Troubleshooting and Problem Solving: Investigating and resolving technical issues that arise during system implementation or operation.
- Project Management: Coordinating with project managers and other team members to ensure that projects are completed on time and within budget.
Essential Requirements
- Batcher’s degree in Computer Science or equitant
- Previous Developer experience (5-6 Years)
- Excellent communication skills (telephone and face to face).
- Ample knowledge on development of applications with latest tools
- Ability to develop and support software issues.
- Ability to think critically.
Desirable Requirements
- Prepared to be flexible and open-minded about all aspects of the job
- The ability to learn quickly.
- A self-starter who is comfortable working alone or within a team
- Driving license
Skills
Skills:
- Proficiency in programming languages such as Java, C++, Python, or others
- Strong understanding of software development lifecycle
- Experience with database management systems
- Knowledge of web development frameworks like Angular, React, or Node.js
- Problem-solving and critical thinking abilities
- Excellent teamwork and communication skills
- Attention to detail and ability to manage multiple tasks simultaneously
Desired candidate profile
1. Software Developer
A Software Developer is responsible for designing, coding, testing, and maintaining software applications. They work in a variety of programming languages, frameworks, and environments to build systems that meet specific user or business needs.
Key Skills:
- Programming Languages: Proficiency in languages like Java, C++, Python, Ruby, C#, or JavaScript.
- Software Engineering: Understanding of algorithms, data structures, and software design patterns.
- Version Control: Knowledge of tools like Git for managing code changes and collaboration.
- Testing & Debugging: Ability to write unit tests and debug code to ensure reliability.
- Problem-Solving: Excellent analytical thinking and troubleshooting skills.
Common Responsibilities:
- Writing clean, efficient, and well-documented code.
- Building software applications based on user or business requirements.
- Maintaining and improving existing software systems.
- Collaborating with teams (such as UX/UI designers, project managers, and other developers) to create and deliver products.
- Debugging, troubleshooting, and resolving technical issues.
2. Web Developer
A Web Developer focuses on the development of websites and web applications. This role involves working with both front-end (what users see) and back-end (server-side logic and databases) technologies to create fully functional and dynamic web experiences.
Key Skills:
- Front-End Development: Proficiency in HTML, CSS, JavaScript, and frameworks like React, Angular, or Vue.js.
- Back-End Development: Experience with server-side languages such as Node.js, PHP, Ruby on Rails, Django (Python), or Java.
- Database Management: Working knowledge of databases like MySQL, PostgreSQL, MongoDB, or SQL Server.
- Version Control Systems: Familiarity with Git or SVN for managing code repositories.
- API Development: Building and consuming APIs (RESTful or GraphQL).
Common Responsibilities:
- Designing and building the structure and layout of websites.
- Writing efficient, scalable code for both front-end and back-end development.
- Integrating data from various back-end services and databases.
- Ensuring the website or web application is responsive and performs well across all devices and browsers.
- Working closely with designers to implement user-friendly interfaces.
3. Mobile Developer
A Mobile Developer is responsible for designing, developing, and maintaining mobile applications for smartphones and tablets. Mobile developers specialize in either iOS or Android development, or sometimes in cross-platform development.
Key Skills:
- Mobile Development Frameworks: Proficiency in Swift (for iOS) or Kotlin/Java (for Android). Familiarity with React Native or Flutter for cross-platform apps.
- UI/UX Design: Understanding of mobile design principles for creating intuitive and engaging user experiences.
- Mobile App Architecture: Knowledge of architectural patterns such as MVC, MVVM, or MVP for building scalable apps.
- App Performance Optimization: Ensuring apps run smoothly and efficiently on various devices.
- Version Control: Experience with Git for tracking and managing code.