We are in need of a Sr. Software Developer that will be responsible for developing, enhancing, and supporting software applications for Byteworks and its clients.
S / He will be expected to assist various teams in designing, developing, deploying, and sustaining business applications and tools that help Byteworks and its clients add value to the operations.
1. Interacts professionally with clients and internal business units to assist in developing core business requirements for applications.
2. Designing applications in line with best practice and the specific requirements of clients (clean code, test coverage, source code version control, pull requests, code review, issue tracking, graceful as well as aggressive error handling).
3. Documenting and communicating design approach and methodology to clients.
4. Manages direct reports junior software developers and interns. Responsible for the career development of these officers.
5. Demonstrates leadership and mentorship for peers and subordinates.
Educational Qualification and professional qualification
Bachelors Degree in Computer Science, Management Information Systems, Engineering or any of the Physical Sciences from a reputable University.
2. Certification is an added advantage.
4+ years of software development experience.
Rich experience in Application Development is a requirement.
Must possess experience in the design, development, deployment, and management of at least 3 large-scale enterprise application (JAVA) projects.
Strong communication skills.
The candidate should have a very good grasp of the software development lifecycle : SDLC (Requirement gathering and analysis, Design, Implementation and Coding, Testing including unit and integration testing , Deployment, Maintenance).
Proficient in data layer design (for both relational and NoSQL databases). Practical knowledge of related concepts such as normalization (up to the 3rd normal form).
Understands and can design and implement software to support performance on the scale (when it's interacting with a lot of users and / or a lot of data).
Very proficient in Java / Java EE and any other programming and / or scripting languages.
Proficient in Webservices / API design and implementation with Java (proficiency in the Spring framework is an advantage), as well as web application frontend (Angular, React, HTML / CSS).
Practical knowledge of data structures and algorithms
At least some basic agile / project management skills; required to deliver on a software feature / project.
Have a working understanding of application security concepts (security of data at rest or in transit, access control, audit logging) and be able to apply them in application design and development.
Proficiency in the use of modern tools and technologies that help with the software development lifecycle. Specifically :
12. Ability to communicate effectively verbally and in writing.
Honesty, integrity, and commitment to work.
Strong leadership skills
Teamwork, proactive, self-driven, results-oriented with a positive outlook.
Our preference is First-class and Second-class Upper-division at least.