Role purpose:
- Software Developer’s role is to design systems according to solution design provided by software architect as well as proactively offer his/her solution and defend it, create PoCs (proof of concept), architypes and real systems together with junior and middle level software developers by coaching and mentor them.
Key accountabilities:
- Programming (Algorithm creation, coding, testing, debugging, specification creation);
- Performing quality assurance, documentation and functional testing;
- Preparation of reports in all responsible spheres;
- Development and support of all automated development pipelines for continuous integration and delivery;
- Identify, prioritize and execute tasks in the software development life cycle;
- Develop tools and applications by producing clean, efficient code;
- Automate tasks through appropriate tools and scripting;
- Review and debug code;
- Perform validation and verification testing;
- Collaborate with internal teams and vendors to fix and improve products;
- Document development phases and monitor systems;
- Ensure software is up-to-date with latest technologies.
Experience & Education:
- Bachelor of Science in technical field (preferably Computer Science, Systems Engineering, ;Mathematics, Physics and related field) and/or corresponding qualification;
- Minimum 3+ years of experience in software development role;
- Minimum 2+ years of experience in End-to-End development, testing and deploying high-available and scalable application using different backend and frontend stacks.
Skills & Abilities:
- Understanding of software development lifecycle, tools and methodologies included and used in each stage;
- Knowledge of at least one of two backend stacks: Java/Java EE/Spring and/or C#/.NET Framework/.NET Core;
- Knowledge of frontend technologies as Javascript/Typescript/AngularJs/Angular/React;
- Knowledge of SQL as well as database related features (optimizations, tuning);
- Understanding of monolith and microservices architecture, their “pros” and “cons” and implementation, maintenance, configuration methodologies;
- Experience with Unit, automated testing for both backend and frontend;
- Experience in deploying CI/CD pipelines using Jenkins, Bamboo, Circle CI to different both physical and virtual environments as VPS/Cloud/Containers;
- Communicative, easy going and ready to help approach.