Amazonas, Antioquia, Arauca, Atlántico, Bolívar, Boyacá, Caldas, Caquetá, Casanare, Cauca, Cesar, Chocó, Córdoba, Cundinamarca, Guainía, Guaviare, Huila, La Guajira, Magdalena, Meta, Nariño, Norte de Santander, Putumayo, Quindío, Risaralda, Santander, Sucre, Tolima, Valle del Cauca, Vaupés, Vichada, San Andrés, Providencia y Santa Catalina, Bogotá
Senior Full Stack Developer
As a Senior Software Developer, you will take part in the development of software for SproutLoud's Through Channel Marketing Automation SaaS Platform. In this role, you will be part of a cross functional team developing and running highly complex cloud-native applications and services, while meeting the business requirements and improving overall user experience.
The Senior Software Developer is a self-starter with a strong desire to work with cloud-native technologies & processes, improve efficiency along the way and make an impact while contributing to cross-functional teams. You will have opportunities to work on multiple layers of our technology stack, ranging from customer-focused user experience work, building scalable distributed cloud services, working with big data and everything in between. You will learn how to design services and experiences that are required to work around the globe.
You are expected to contribute more than just code. You'll be involved in defining how things work, what they do, and why we do that instead of something else. We also expect you to share your knowledge and expertise with everyone else. Your ability to creatively collaborate and execute team goals will affect scalability and directly contribute to the company's product and the features our team builds. You will collaborate with product, engineering and other development teams in SproutLoud to build cloud-native applications and services using modern web technologies in a dynamic and agile environment.
You will be part of a fun, diverse team that seeks challenges, loves learning and values teamwork. You will have opportunities for learning, mentorship, career growth, and work on high-business impact areas.
Contribute to the full development life cycle of features and products in our SaaS Platform aiming to meet or exceed customer SLAs.
Participate in the design, development and implementation of large-scale distributed systems using cloud-native principles and technologies.
Participate in the design, development and implementation of applications and services able to process large volumes of data, focusing on security, scalability, latency, and resiliency.
Design, develop, test, deploy and maintain user centric, fast and reactive interfaces using modern web technologies.
Design, develop, test, deploy and maintain fast, secure, scalable and highly available backend services in the public cloud (GCP) leveraging modern cloud-native technologies, microservices and DevSecOps best practices.
Write scalable, performant, readable and tested code following standards and best coding practices.
Develop test strategies, use automation frameworks, write unit/functional tests to drive up code coverage and automation metrics.
Participate in code reviews and provide meaningful feedback that helps other developers to build better solutions.
Present your own designs to other development teams, engineering or stakeholders and review designs of others.
Contribute relevant, clean, concise and quality documentation to SproutLoud's knowledge base to support/increase information sharing within the organization.
Learn about SproutLoud's business, master our development process, culture and code base, then improve it.
Establish strong working relationships at all organizational levels and across functional teams.
Collaborate with the interna/external stakeholder and product team to gather functional and non-functional requirements and identify the business requirements.
Work closely with product owners and a wide variety of stakeholders to analyze and break down large requirements into small, simple, workable deliverables.
Ability to work in a fast paced environment and deliver incremental value iteratively and continuously.
Take responsibility and ownership of product timelines and deliverables.
Mentor others in development technologies, tools, and processes.
Qualifications and Skills:
Bachelor's Degree in computer science, computer science engineering, related field, or equivalent experience
6+ years of active engineering experience in a complex environment and/or comparable experience such as successful engineering and deployment of enterprise-grade technology assets in an agile product environment
6+ years of hands on experience with Object Oriented Programing and OO Design patterns
6+ years of hands on experience with web development frameworks
6+ years of hands on experience with RDBMS
4+ years of hands on experience with modern front-end frameworks
Expertise in Data structures and Algorithms.
Expertise in web principles, standards and fundamental technologies.
Proficiency in various layers, including application, presentation, network, and data layers.
Proficiency designing, building and deploying scalable, highly available full-stack solutions.
Proficiency on RDBMS and NoSQL databases
Proficiency consuming web services (REST, SOAP) and integrating with third-party systems.
Proficiency designing, developing, testing and publishing RESTful services using OpenAPI.
Proficiency in public cloud providers (AWS, Azure, GCP, etc). Emphasis on Google Cloud Platform.
Proficiency in Test Driven Development (TDD) or experience with automated testing including unit and functional testing.
Proficiency in Continuous Integration, Continuous Delivery and DevSecOps best practices.
Competency on OWASP security principles, understanding accessibility, and security compliance.
Competency on Unix and command line tools.
Competency on UML or C4 models.
Competency on System Design, Domain Driven Design and Microservices architecture.
Competency on containers (Docker) or Kubernetes.
Competency on user authentication, authorization, including OAuth 2, OpenID Connect, SAML 2, Single Sign-On (SSO), and IAM
Competency on the twelve-factor methodology for building SaaS apps.
Experience with the entire Software Development Life Cycle (SDLC), Agile Development, SCRUM, or Extreme Programming methodologies
A passion for solving problems and providing workable solutions while demonstrating the flexibility to learn new technologies that meet business needs.
Strong communication skills (English) as well as experience in mentoring and educating your peers.
Expertise in one or more Object Oriented Programming languages such as Java, PHP, C++, C#, Python, Ruby, etc. Emphasis on Java, PHP and Python.
Expertise in one or more web development frameworks such as Zend, Laravel, Lumen, Symfony, Spring, Flask, etc. Emphasis on Zend, Laravel and Spring.
Expertise in one or more front-end frameworks such as AngularJS, React, Vue.js. Emphasis on Vue.js.
Expertise in one or more Template Engine/Processors such as Smarty, Blade, Twig, Mustache, Handlebards, etc. Emphasis on Smarty and Twig.
Expertise in one or more testing frameworks such as PHPUnit, JUnit, Codeception, Jest, Cypress, Mocha, Chai. Emphasis on PHPUnit, JUnit, Codeception or Jest.
Proficiency in SQL/PLSQL, schema design, and one or more RDBMS such as PostgreSQL, MySQL, Oracle, SQL Server, etc. Emphasis on PostgreSQL.
Proficiency in one or more Version Control Systems such as Git, SVN, CVS, Team Foundation. Emphasis on Git.
Proficiency in one or more modern CSS Frameworks such as Bootstrap, Foundation, Bulma, Materialize CSS. Emphasis on Bootstrap.
Proficiency in one or more modern CSS precompilers such as Less or Sass.
Proficiency in full-stack observability principles (tracing, metrics, logging) and one or more observability tools such as Apache Skywalking, Prometheus, Grafana, Graylog, and StackDriver.
Proficiency in one or more testing, debugging and optimization tools such as JMeter, Postman, Developer Tools, YSlow, HTTPWatch, etc.
Competency in distributed or NoSQL databases such as CockroachDB, MongoDB, Cassandra, Couchbase, DynamoDB, Redis, etc.
Competency developing Event-Driven apps using message brokers such as Apache Kafka, Pulsar. Emphasis on Apache Kafka.
It's a plus if you have any of the following skills:
Experience developing, publishing and running microservices .
Experience with Service Mesh such as Istio or LinkerD. Emphasis on Istio.
Experience with API management tools such as KrakenD, APIGee, Kong, etc. Emphasis on KrakenD.
Benefits and Perks:
At SproutLoud, we continue to cultivate an environment that aspires to be one of the best places to work - period. SproutLoud pays the full cost of some benefit programs with our team members. Benefits include health-care coverage (Poliza de Seguro Sura), transportation/parking benefit, English classes, maternity and paternity benefits, professional development, generous paid time off (PTO) policy, employee and client referral programs, and wellness initiatives. We also have fun along the way - a partially paid gym membership, community involvement events, creative recognition programs, breakfast Fridays, BBQ/picnic summers, annual kick off events, monthly happy hours/team building activities, casual dress code, etc. And because we believe in keeping the innovative spirit alive over the long haul, we provide a paid four-week sabbatical leave after every sixth year of service for team members to recharge, renew and reboot.
Having a career at SproutLoud means you are on a team that helps each other win. You will be in an environment that is 100% jerk-free, and share values with others who are accountable, care, inspire, elevate and grow. Come grow with SproutLoud!
This vacancy is disclosed through ticjob.co