QUALIFICATIONS AND JOB DESCRIPTION
2+ years of software development experience
Programming Languages - C/C++/Python/Perl
Knowledge and understanding of Design Patterns and Object-Oriented Design concepts
Knowledge and understanding of PostgreSQL/MySQL/SQLite
Knowledge and understanding on routing, switching, firewall, proxy and security operations
Knowledge and understanding on network protocols and network programming
Knowledge and understanding on client – server software architecture and development
Knowledge on Software lifecycle management, standards for coding, style and documentation
Knowledge on RFC standarts
Operating Systems - UNIX/Linux, Windows
Solid understanding of data structures and algorithms
Experience on Embedded Systems is a plus
Basic knowledge of UML
Basic knowledge on configuration management systems.
Strong oral and written communication skills
Good command of English, both written and spoken
As a valued member of the CTECH Software Engineering group, Software Developer is involved in the entire software product lifecycle including design, development, unit/integration testing as well as validation of current and future CTECH products.
Design, develop and integrate software modules that meet quality objectives, engineering methodologies and guidelines set by CTECH.
Participate in requirements analysis phase and contribute to the High Level as well as detailed product specification documents when required.
Recommend enhancements, improvements, and innovations to the existing technology and recommend the development of new solutions and technology prototypes.
Conduct unit, integration, performance and, if required, system testing in a timely and cost-effective manner.
Establish technical documentation by writing design and test documents as well as drafting initial versions of product manuals for the corresponding parts.
Perform and support field installation/system integration of the products as well as acceptance tests, if required.