Connecting...

Software Engineer – C++

Job Title: Software Engineer – C++
Contract Type: Permanent
Location: Kuala Lumpur
Industry:
Salary: RM5,000 – RM9,000
Contact Name: Albert Lim
Contact Email: albert.lim@ellwoodconsulting.com.my
Job Published: May 06, 2020 12:26

Job Description

About our client

Our client is one of the leading Managed Services Provider in the IT security industry with clients in various areas within financial and commercial.

 

About the role

The Software Engineer is responsible to apply engineering to the design, development, implementation, testing and maintenance of software in a systematic manner. 

The Software Engineer will work in a team with architect, scrum master, testers, software engineers, project manager to deliver a technical system/solution. While working as part of a development team, the Software Engineer are encouraged to provide technical leadership on technical decision or development practice, coaching the junior engineers and assisting development team lead on Scrum ceremonies if needed.

 

Your responsibilities

  • Participate in all phases of Software Development Life Cycle – Design, Development, Testing, Deployment, post Deployment maintenance.

  • Able to work independently, proposing viable technical solutions through self-study and in-depth understanding of the existing code base.

  • Produces or validates the schedule and effort estimate for each task they perform, commit to the assigned task.

  • Demonstrates an understanding of the importance of schedule and will endeavor to estimate accurately and deliver according to those estimates.

  • Demonstrates maturity, skill and adeptness in team collaboration, technical discussion and negotiation.

  • Continually improve personal understanding of the programming languages, frameworks, technical concepts, methods and measurements that underpin their Engineering disciplines and practices.

  • Demonstrates the ability to understand, challenge, contribute or construct software specification and is capable of building software in line with the specifications.

  • Exploits appropriate software development methods, languages, libraries and techniques and applies these to software engineering tasks to realise the most effective outcome.

  • Ensures that all work is consistent with defined standards where standards exist and to withstand professional scrutiny in any case.  

  • Ensures that high quality and delivery standards are met and consistently delivers quality code on time and within estimate. 

  • Demonstrates the ability to reflect on and improve personal performance.

 

Core Engineering – top-level accountabilities:

  • Designs, codes, tests, correct and documents large and/or complex programs and program modifications from supplied specifications using agreed standards and tools, to achieve a well-engineered result. 

  • Drive the good development practices such as code refactoring, unit testing, code review…etc. 

  • Works closely with other teams in the lifecycle (e.g. build, operations, testing) to ensure that the delivery of software is coherent within the overall pipeline.

 

Expert Technologist accountabilities:

  • Demonstrates a high productivity of design, code and unit test.

  • Recognized as the expert and point of contact for at least one key software component or technology.

  • Defines the direction of implementation technology in a complete technology area with the team (for example Java or Microsoft).

 

Delivery/lifecycle management accountabilities 

  • Sets standards for programming tools and techniques, advises on their application and ensures compliance. 

  • Takes technical responsibility for all stages in the software development process. 

  • Prepares project and quality plans and advises systems development teams. 

  • Provides advice, guidance and assistance to less experienced colleagues as required. 

 

You will have

  • Bachelor’s degree in Engineering/IT/Computer Science or equivalent.

  • At least 3 years of experience in IT/Software industry.

  • Senior candidates are encouraged to apply.

 

Primary skills: 

  • C++ development and debugging for real time applications.

  • PHP back-end application and API development.

  • Familiarity with CentOS Linux and Bash.

  • Secure coding techniques.

 

Secondary skills: 

  • Sockets programming for TCP/IP.

  • PostgreSQL database design and use.

  • C++ Standard Template Library (STL).

  • PHP for front-ends, HTML, CSS, JavaScript.

  • Devops mind set for release and deployment management, build system maintenance.

  • System architecture and design.

  • Familiarity with all stages of a product lifecycle.

  • Git/BitBucket and CVS source control systems.

  • Agile/Scrum.

  • Adaptable and collaborative.

  • Good team worker. 

  • Able to work with a variety of methodologies.

  • Ability to debug and repair products in the field under time pressure.

  • Sharing out-of-hours customer support duties.