Vincitore Hackathon: i diritti sulla soluzione digitale rimangono con noi

Vincitore Hackathon: i diritti sulla soluzione digitale rimangono con noi

Un hackathon è una competizione tra sviluppatori per creare soluzioni digitali nell'interesse del cliente. Sebbene questi tipi di eventi siano molto popolari nell’ambiente IT, molti professionisti di talento hanno paura di parteciparvi. Uno dei motivi è lo stereotipo sulla perdita garantita dei diritti sulla soluzione sviluppata. Uno dei vincitori dell'hackathon su larga scala, Evgeniy Mavrin, sfata questo mito e parla anche dei vantaggi e delle prospettive dei concorsi di programmazione.

Evgeniy è un giovane sviluppatore promettente. Dopo aver preso parte al percorso "Megapopis Mosca", organizzato dall'Agenzia per l'innovazione della capitale nell'ambito dell'hackathon online VirusHack, lui, come parte del team EGD BAG (insieme ad Alexey Airapetov e Anna Kovalenko), ha svolto meglio di altri il compito di creare un bot informativo per il messenger ICQ New, che segnalava agli utenti la diffusione dell'infezione da coronavirus.

Vincitore Hackathon: i diritti sulla soluzione digitale rimangono con noi

— Evgeniy, cosa avete fatto tu e i membri del tuo team prima di partecipare all'hackathon? Dove hai studiato, dove hai lavorato, in quali progetti sei stato coinvolto? Sei stato coinvolto in affari?

— Siamo una squadra di compagni di classe. Laureato presso la MSTU intitolata a N. E. Bauman nel programma di master in Sistemi e tecnologie dell'informazione nel 2019. Tutti programmiamo, ma in direzioni diverse. Ad esempio, il mio stack principale è C++/Qt, mentre quello di Lesha (Alexey Airapetov – nota dell’autore) è Java. Oltre al nostro lavoro principale, ognuno di noi aveva i propri progetti preferiti in diverse fasi di completamento (leggi abbandono). In generale, dal rilascio è venuto fuori poco. Nessuno del nostro team è stato coinvolto in affari prima. Ma abbiamo partecipato, per così dire, al "freelance amichevole", quando qualcuno che conosci ha semplicemente bisogno di aiuto IT.
Grazie alla nostra formazione e agli interessi comuni nel campo informatico, non è difficile per noi proporre e implementare una soluzione funzionante a quasi tutti i problemi.

— Era la prima volta che partecipavi a un hackathon? Come sei venuto a conoscenza del brano “Megapolis Mosca”?

— Personalmente, ho già partecipato all'hackathon Aramco Upstream Solutions Technathon 2019 in una squadra con compagni dell'Università statale russa del petrolio e del gas intitolata a I.M. Gubkin, ma quella volta siamo stati sfortunati. Non c'era corrispondenza tra i partecipanti alla squadra.

Abbiamo saputo del brano "Megapolis Mosca" da amici: hanno semplicemente inserito un annuncio nella chat di una comunità di sharpisti (sviluppatori C#). Abbiamo affrontato la partecipazione all'hackathon VirusHack in modo responsabile: abbiamo deciso in anticipo il compito e distribuito approssimativamente le responsabilità. E ha davvero aiutato.

— Come valuti la complessità del compito del nuovo cliente ICQ? Qual è il livello degli avversari?

— Il compito rientra perfettamente, a mio avviso, nell’ambito temporale dell’hackathon. Spesso, entro un paio di giorni assegnati per un hackathon, molti team presentano un concetto o un prototipo come soluzione finale. Abbiamo presentato il prodotto finito, che noi e il cliente abbiamo messo rapidamente in produzione. Il livello degli avversari era alto. Ed ero davvero preoccupato quando ho visto i risultati delle altre squadre. Molti partecipanti si sono concessi una libera interpretazione del compito: qualcuno, ad esempio, ha realizzato un bot con il quale si potevano fare semplici giochi casual.

— Ci racconti la soluzione che alla fine è venuta fuori? Quali strumenti sono stati utilizzati per svilupparlo?

— Il risultato è stato un bot informativo che informava gli utenti sulla diffusione dell’infezione da coronavirus.

Utilizzando un geotag, le persone potrebbero ricevere informazioni sui nuovi e vecchi casi di infezione dei cittadini, scoprire gli indirizzi delle istituzioni mediche e dei laboratori più vicini per sottoporsi ai test per COVID-19 e gli indirizzi delle farmacie e dei negozi più vicini. Nel bot è stato integrato anche un generatore di messaggi SMS semplificato per la ricezione di un pass elettronico.

Per regolare i flussi computazionali durante la scrittura di un bot, sono stati utilizzati strumenti del linguaggio Java standard. Per semplificare notevolmente il lavoro del bot è stata scelta la libreria API di ICQ. Abbiamo risolto anche il problema di semplificare l'implementazione del bot in un ambiente di produzione: sapendo che Docker è ormai lo standard nello sviluppo aziendale, abbiamo preparato un'immagine Docker.

In generale, il risultato è un prodotto facile da modernizzare e adattabile alla scalabilità.

— Qual è stata la cosa più difficile?

— La cosa più difficile, probabilmente, è stata “pettinare” tutte le funzionalità del bot in modo che fosse comodo da usare. Abbiamo implementato l'interfaccia in modo tale che l'utente inserisca i dati nel testo solo in casi estremi, come, ad esempio, per indicare il motivo dell'emissione di un abbonamento una tantum (sì, questo era rilevante fino a poco tempo fa). Tutta l'interazione con il bot si riduceva all'uso competente degli strumenti del messenger stesso. Abbiamo completamente disabilitato la possibilità di inserire manualmente i comandi. A proposito, ecco un video dimostrativo del bot: https://youtu.be/1xMXEq_Svj8

— Sei diventato il vincitore dell'hackathon. Come si sono sviluppati ulteriormente gli eventi?

— Abbiamo imparato una cosa molto utile: alla fine, noi stessi siamo rimasti i detentori del copyright del bot, il che mi ha persino sorpreso. Pensavo che ogni hackathon fosse, grosso modo, uno scambio di un'idea nata da un brainstorming di squadra per un premio di valore. Ma ho riletto l'accordo e le regole di partecipazione e non ho trovato nulla del genere. Quindi, agli altri partecipanti all'hackathon che sono preoccupati di dover trasferire i diritti sui loro sviluppi, voglio dire che no, è lungi dall'essere un dato di fatto che sarete costretti a farlo. Durante l'hackathon di VirusHack è stato addirittura possibile archiviare il codice in repository privati ​​e concedere semplicemente a uno dei membri della giuria un accesso temporaneo per prendere una decisione. In ogni caso, prima dell’hackathon, leggete sempre i documenti di partecipazione affinché non ci siano sorprese in futuro.

A proposito, abbiamo deciso di lasciare aperto il nostro codice: https://github.com/airaketa/egdbag-bot. “Forchetta” per la tua salute.
Dopo l'hackathon, di nostra iniziativa, abbiamo preparato un porting bot per l'API di Telegram in caso di una seconda ondata di pandemia di coronavirus. Ma è meglio lasciare che questo progetto rimanga per sempre in archivi privati.

Ora stiamo pensando di adattare la funzionalità del bot alla situazione attuale, quando il regime di autoisolamento sarà stato revocato. Ad esempio per cercare centri fitness, ristoranti e altre strutture cittadine. I membri del team ICQ New non sono contrari a “ospitare” una versione aggiornata del bot nelle loro strutture.

— I programmatori dovrebbero partecipare agli hackathon? Cosa pensi che possano dare ai partecipanti e ai vincitori?

- Ne vale sicuramente la pena. È un'esperienza interessante completare da zero un'attività applicata in un paio di giorni, che puoi poi discutere con gli esperti. In più, questa è un'opportunità per valutare le tue capacità e le “abilità” dei membri del team in una vera maratona di due-tre giorni. È anche fare rete. In qualsiasi campo, soprattutto nell'IT, questo è un aspetto molto importante dello sviluppo, come mi sembra. Puoi trovare nuove persone che ti sono utili, comunicare con loro e vedere i loro progetti. Inoltre, mentre svolgi solo lo sviluppo nella tua sede di lavoro principale, puoi cimentarti in un hackathon in un nuovo ruolo, ad esempio "proprietario del prodotto", "responsabile del team" o un altro ruolo. Ma per il vincitore, questa è un'opportunità per una collaborazione di successo con le migliori aziende e un aiuto nella promozione della propria idea. Ci sono molti casi in cui progetti su larga scala sono nati dagli hackathon.

— Le candidature per un nuovo hackathon per risolvere i problemi delle città inizieranno ad agosto "Leader della trasformazione digitale". I suoi vincitori riceveranno una sostanziosa ricompensa. La tua squadra vi parteciperà? Come ti preparerai? Se vinci, in cosa spenderai il premio in denaro?

— Per me, così come per il resto del team, l’obiettivo principale della partecipazione all’hackathon è l’opportunità di sviluppare un prototipo di un prodotto all’interno di un’area di nostro interesse.
Acquisiamo esperienza nello sviluppo collettivo e un buon progetto nel nostro portafoglio e ci troviamo di fronte a compiti interessanti e complessi. Ovviamente vogliamo vincere. Tuttavia, non miriamo specificamente a ricevere un premio in denaro. Se il progetto porterà benefici, questa sarà la nostra vittoria.

Per prepararsi alla competizione "Leader della trasformazione digitale" cercheremo di allargare la squadra: nell’hackathon precedente eravamo in tre e francamente semplicemente non c’erano abbastanza mani. Inoltre, risolveremo il problema con il software installato in modo che tutti i membri del team dispongano della serie di programmi richiesta prima dell'inizio della competizione (come ha dimostrato l'esperienza, viene spesa un'enorme quantità di tempo per risolvere i problemi con la sincronizzazione del software).

Se riusciamo comunque a ottenere un premio, spenderemo i soldi per una PS5 e resteremo a casa per un paio di settimane. Scherzo! Naturalmente comprendiamo che un premio in denaro è, prima di tutto, un aiuto finanziario per l'ulteriore sviluppo del progetto. Hosting, macchine virtuali e così via fanno parte di ciò a cui verranno distribuite le finanze.

Fonte: habr.com

Aggiungi un commento